首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >AJAX发布错误:Refused to set unsafe header “Connection”如何解决?

AJAX发布错误:Refused to set unsafe header “Connection”如何解决?
EN

Stack Overflow用户
提问于 2018-04-03 04:33:26
回答 1查看 0关注 0票数 0

我有以下自定义ajax函数将数据发回PHP文件。每次数据发布后,我都会遇到以下两个错误:

Refused to set unsafe header "Content-length"

Refused to set unsafe header "Connection"

代码:

代码语言:javascript
复制
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);
 }

我究竟做错了什么?

EN

回答 1

Stack Overflow用户

发布于 2018-04-03 13:47:20

删除这两行:

代码语言:javascript
复制
xmlHttp.setRequestHeader("Content-length", params.length);
xmlHttp.setRequestHeader("Connection", "close");

XMLHttpRequest不允许设置这些标题,它们是由浏览器自动设置的。原因在于,通过操纵这些标头,可能会欺骗服务器通过相同的连接接受第二个请求,而这种连接不会经过通常的安全检查 - 这将成为浏览器中的安全漏洞。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/-100007934

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档