美国服务器ajax如何防止sql注入
云服务器
美国服务器ajax如何防止sql注入
2026-01-21 13:00
美国服务器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"。应用以下方法; */ //varparams=arguments[1].data; //if(params!==""||params!==null){ //varre=/select|update|delete|truncate|join|union|exec|insert|drop|count|’|--|"|=|;|>|<|%/i; //params.split('&').forEach(function(item){//js的forEach()方法 //item=item.split("="); //varname=item[0];//名称 //varval=item[1];//值 //if(re.test(item[1])){ //alert("请勿输入非法字符"); //arguments[0].abort();//终止请求 ////请求方法记录相关日志 ////location.href=arguments[1].data.replace(sQuery,""); //} //}); //} varparams=arguments[1].data;//arguments是一个两个值的数组分别是0和1 re=/select|update|delete|truncate|join|union|exec|insert|drop|count|’|--|"|=|;|>|<|%/i;//可以根据需求自定义加减 for(varkeyinparams){ 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, //varsessionstatus=XMLHttpRequest.getResponseHeader("sessionstatus"); //if(sessionstatus=="timeout"){ //如果超时就处理,指定要跳转的页面(比如登陆页) //} //此处可以对响应回来的数据进行解密 debugger; if(textStatus!=="error"){ //通过XMLHttpRequest取得响应结果 varres=XMLHttpRequest.responseText; varjsonData=JSON.parse(res); console.log(jsonData); if(jsonData.state==-1){ //如果超时就处理,指定要跳转的页面(比如登陆页) alert(jsonData.msg); window.location.replace("/login/index.php"); }elseif(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可能为:"NotFound"、"InternalServerError"等 //提示形如:发送AJAX请求到"/index.html"时出错[404]:NotFound 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:对响应的数据进行过滤 }); 购买使用一诺网络美国服务器,可以极大降低初创企业、中小企业以及个人开发者等用户群体的整体IT使用成本,无需亲自搭建基础设施、简化了运维和管理的日常工作量,使用户能够更专注于自身的业务发展和创新。