91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

ajax如何防止sql注入

小新
512
2021-01-07 16:26:45
欄目: 云計算

ajax如何防止sql注入

ajax防止sql注入的方法:

將以下代碼放在公用的js里面即可,如:

$.ajaxSetup({

contentType: "application/x-www-form-urlencoded;charset=utf-8",

beforeSend: function() { //發送前執行的函數

try {

/**

* 當 processData: false,此時后臺接收的值都會是object類型。此時應該把所有參數拿出來做成序列化形式 如:"name=bill&age=18" 否則后臺無法接收

* 當 processData: true或者不設置時 json數據是已經序列化成字符類型 。如:"name=bill&age=18"。應用以下方法;

*/

//var params = arguments[1].data;

//if (params !== "" || params !== null) {

// var re = /select|update|delete|truncate|join|union|exec|insert|drop|count|’|--|"|=|;|>|<|%/i;

// params.split('&').forEach(function (item) { //js的forEach()方法

// item = item.split("=");

// var name = item[0];//名稱

// var val = item[1];//值

// if (re.test(item[1])) {

// alert("請勿輸入非法字符");

// arguments[0].abort(); //終止請求

// //請求方法記錄相關日志

// //location.href = arguments[1].data.replace(sQuery, "");

// }

// });

//}

var params = arguments[1].data; //arguments是一個兩個值的數組分別是0和1

re = /select|update|delete|truncate|join|union|exec|insert|drop|count|’|--|"|=|;|>|<|%/i; //可以根據需求自定義加減

for(var key in params) {

console.log(params[key]);

if(re.test(params[key])) {

alert("請勿輸入非法字符");

arguments[0].abort(); //終止請求

//請求方法記錄相關日志

//location.href = params.replace(sQuery, "");//跳轉到某個頁面

}else{

//加密在此處做。后臺可以做全局統一解密

//此時應該把所有參數拿出來做成序列化形式 如:"name=bill&age=18" 否則后臺無法接收

}

}

} catch(e) {

console.log(e);

//請求方法記錄相關日志

}

},

complete: function(XMLHttpRequest, textStatus) {

try {

//通過XMLHttpRequest取得響應頭,sessionstatus,

//var sessionstatus = XMLHttpRequest.getResponseHeader("sessionstatus");

//if(sessionstatus == "timeout") {

//如果超時就處理 ,指定要跳轉的頁面(比如登陸頁)

//}

//此處可以對響應回來的數據進行解密

debugger;

if(textStatus !== "error") {

//通過XMLHttpRequest取得響應結果

var res = XMLHttpRequest.responseText;

var jsonData = JSON.parse(res);

console.log(jsonData);

if(jsonData.state == -1) {

//如果超時就處理 ,指定要跳轉的頁面(比如登陸頁)

alert(jsonData.msg);

window.location.replace("/login/index.php");

} else if(jsonData.state == 0) {

//其他的異常情況,給個提示。

alert(jsonData.msg);

} else {

//正常情況就不統一處理了

}

}

//請求方法記錄相關日志

} catch(e) {

console.log(e);

//請求方法記錄相關日志

}

},

error: function(jqXHR, textStatus, errorMsg) { // 出錯時默認的處理函數

try {

// jqXHR 是經過jQuery封裝的XMLHttpRequest對象

// textStatus 可能為: null、"timeout"、"error"、"abort"或"parsererror"

// errorMsg 可能為: "Not Found"、"Internal Server Error"等

// 提示形如:發送AJAX請求到"/index.html"時出錯[404]:Not Found

alert('發送AJAX請求到"' + this.url + '"時出錯[' + jqXHR.status + ']:' + errorMsg);

//請求方法記錄相關日志

} catch(e) {

console.log(e);

//請求方法記錄相關日志

}

},

statusCode: { //自定義返回消息

404: function() {

alert('數據獲取/輸入失敗,沒有此服務。404');

},

504: function() {

alert('數據獲取/輸入失敗,服務器沒有響應。504');

},

500: function() {

alert('服務器有誤。500');

}

},

processData: false, //默認不序列化參數//dataFilter:對響應的數據進行過濾

});

0
凤城市| 垦利县| 始兴县| 册亨县| 金堂县| 萍乡市| 乌鲁木齐县| 江达县| 定陶县| 板桥市| 万安县| 新龙县| 平果县| 佛学| 阿巴嘎旗| 郸城县| 永年县| 宁海县| 英吉沙县| 克东县| 青神县| 前郭尔| 固阳县| 襄樊市| 将乐县| 铁岭县| 合水县| 渑池县| 金寨县| 武川县| 安岳县| 开化县| 旬邑县| 望城县| 合作市| 威海市| 新宾| 闵行区| 江油市| 邳州市| 泸溪县|