node.js 的繁琐模块是不是有任何防止 sql 注入的功能?

Posted

技术标签:

【中文标题】node.js 的繁琐模块是不是有任何防止 sql 注入的功能?【英文标题】:Does tedious module for node.js have any function for preventing sql injection?node.js 的繁琐模块是否有任何防止 sql 注入的功能? 【发布时间】:2018-10-21 03:11:55 【问题描述】:

为了您的信息,我正在努力使用 Microsoft Azure 和繁琐的模块来防止 sql 注入。

我在mysql模块上看到了一个叫做“escape”的函数,但是我不确定类似的函数是否在繁琐的模块中。

【问题讨论】:

tediousjs.github.io/tedious/parameters.html 【参考方案1】:

转义是一种古老的技术,使用起来很烦人,也容易出错(忘记变量或将其转义两次有点容易——而且看到使用 错误 转义函数的情况并不少见)。过去十年编写的任何体面的数据库库都必须支持准备好的语句,否则将被丢弃。

Tedious site 的侧边菜单有一个突出的 Using Parameters 第一级条目,涵盖了以下内容:

这里支持参数化语句和使用参数 调用过程时。

输入参数被添加到请求使用 Request.addParameter(),并使用添加输出参数 Request.addOutputParameter()参数名称

在 T-SQL 中,参数名称通过前缀 '@'。

select id from address where first_name = @name and age > @age

此 API 中使用的参数名称不包含“@”。

request.addParameter('name', ..., ...);
request.addParameter('age', ..., ...);

他们本可以提供不那么冗长的语法,但它应该可以完成工作。

【讨论】:

以上是关于node.js 的繁琐模块是不是有任何防止 sql 注入的功能?的主要内容,如果未能解决你的问题,请参考以下文章

是否可以在没有准备好的语句(Node.js 和 MSSQL)的情况下防止 SQL 注入

使用Node.js需要与ES6导入/导出

在 node.js 中导入 sql 文件并针对 PostgreSQL 执行

如何防止 Node.js Web 服务器停机

node.js的模块化

处理或防止错误使我在 Heroku 上的整个 node.js 应用程序崩溃