中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

node如何預防sql注入

小新
290
2021-02-05 18:40:08
欄目: 云計算

node如何預防sql注入

node預防sql注入的方法:

1.使用mysql.format()轉義參數,例如:

var userId = 1;

var sql = "SELECT * FROM ?? WHERE ?? = ?";

var inserts = ['users', 'id', userId];

sql = mysql.format(sql, inserts); // SELECT * FROM users WHERE id = 1

2.使用connection.query()的查詢參數占位符,例如:

var userId = 1, name = 'test';

var query = connection.query('SELECT * FROM users WHERE id = ?, name = ?', [userId, name], function(err, results) {

// ...

});

console.log(query.sql); // SELECT * FROM users WHERE id = 1, name = 'test'

或者改寫成:

var post = {userId: 1, name: 'test'};

var query = connection.query('SELECT * FROM users WHERE ?', post, function(err, results) {

// ...

});

console.log(query.sql); // SELECT * FROM users WHERE id = 1, name = 'test'

3. 使用escapeId()編碼SQL查詢標識符,例如:

var sorter = 'date';

var sql = 'SELECT * FROM posts ORDER BY ' + connection.escapeId(sorter);

connection.query(sql, function(err, results) {

// ...

});

4.使用escape()對傳入參數進行編碼,例如:

var userId = 1, name = 'test';

var query = connection.query('SELECT * FROM users WHERE id = ' + connection.escape(userId) + ', name = ' + connection.escape(name), function(err, results) {

// ...

});

console.log(query.sql); // SELECT * FROM users WHERE id = 1, name = 'test'

0
恩平市| 东光县| 梨树县| 西宁市| 绥滨县| 高唐县| 泌阳县| 霍邱县| 德州市| 栖霞市| 鹤庆县| 汝州市| 灯塔市| 黑河市| 河津市| 项城市| 疏勒县| 舞阳县| 永修县| 青岛市| 天门市| 通城县| 扶风县| 旅游| 盈江县| 邮箱| 方城县| 额尔古纳市| 镇宁| 潍坊市| 微山县| 宜昌市| 东兰县| 逊克县| 大邑县| 金昌市| 株洲县| 资源县| 和平县| 天长市| 广宗县|