[英]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.