[英]WebSQL injection prevention with Javascript
我到处搜寻,但没有找到答案。
Javascript中是否有类似于PHP的mysql_real_escape_string
的函数,可以在将用户输入写入WebSQL数据库之前对其进行安全输入?
如果不是,是否有人知道我可以使用的自定义函数?
更新:所以似乎没有本机函数,所以我写了:
function sql_real_escape_string(val){
var val = val.replace('"','"');
val = val.replace('\'','’');
return val;
}
为了安全起见,我还应该替换其他字符吗?
插入数据库时处理用户输入的最佳答案是采用参数化。 Web SQL API支持以下功能:
var db = openDatabase('mydb', '1.0', 'my database', 2 * 1024 * 1024);
db.transaction(function (tx) {
tx.executeSql('INSERT INTO foo (id, text) VALUES (?, ?)', [id, userValue]);
});
代替这个:
db.transaction(function (tx) {
tx.executeSql('INSERT INTO foo (id, text) VALUES (1, "user-entered value")');
});
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.