AJAX发布错误:拒绝设置不安全的标题“连接”
我有以下自定义ajax函数将数据发回到PHP文件。 每次数据发生后,我得到以下两个错误:
拒绝设置不安全的标题“内容长度”
拒绝设置不安全的标题“连接”
代码:
function passposturl(url1, params, obj) { //url1 = url1+"&sid="+Math.random(); xmlHttp = get_xmlhttp_obj(); xmlHttp.loadflag = obj; xmlHttp.open("POST", url1, true); //alert(url1); //alert(params); //alert(obj); //alert(params.length); xmlHttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded"); xmlHttp.setRequestHeader("Content-length", params.length); xmlHttp.setRequestHeader("Connection", "close"); xmlHttp.onreadystatechange = function () { stateChanged(xmlHttp); }; xmlHttp.send(params); }
我究竟做错了什么?
删除这两行:
xmlHttp.setRequestHeader("Content-length", params.length); xmlHttp.setRequestHeader("Connection", "close");
XMLHttpRequest不允许设置这些标题,它们是由浏览器自动设置的。 原因是通过操作这些头文件,你可能会欺骗服务器通过同一个连接来接受第二个请求,这个连接不会经过通常的安全检查 – 这是浏览器中的一个安全漏洞。