Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/404.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Safari因“访问控制允许标头不允许请求标头字段内容类型”而导致XMLHttpRequest(POST)失败_Javascript_Ajax_Safari - Fatal编程技术网

Javascript Safari因“访问控制允许标头不允许请求标头字段内容类型”而导致XMLHttpRequest(POST)失败

Javascript Safari因“访问控制允许标头不允许请求标头字段内容类型”而导致XMLHttpRequest(POST)失败,javascript,ajax,safari,Javascript,Ajax,Safari,我只是尝试使用httpbin测试XMLHttpRequests <!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8"> <title></title> </head> <body> <script type="text/javascript"> (function() { var

我只是尝试使用httpbin测试XMLHttpRequests

<!DOCTYPE html>
<html>
<head lang="en">
    <meta charset="UTF-8">
    <title></title>
</head>
<body>
<script type="text/javascript">
    (function() {
        var xhrToCheck = new window.XMLHttpRequest();
        xhrToCheck.open("POST", "http://httpbin.org/post");
        xhrToCheck.onreadystatechange = function() {
            if(this.readyState === 4) {
                console.log(this);
            }
        };
        xhrToCheck.send("post test");

    })();
</script>
</body>
</html>
任何关于为什么会发生此问题的帮助都将不胜感激


编辑:抱歉,我想我的主要问题是1如何解决此问题,以便safari上的POST请求不会引发错误

出于安全原因,一些浏览器会检查主机和访问控制允许源是否相同,或者访问控制允许源是否允许主机url发出该请求,这样你的浏览器就可以保护你免受chrome浏览器的攻击,你可以禁用该安全功能

甚至还有一种解释

[Error] Failed to load resource: Request header field Content-Type is not allowed by Access-Control-Allow-Headers. (post, line 0)
[Error] XMLHttpRequest cannot load http://httpbin.org/post. Request header field Content-Type is not allowed by Access-Control-Allow-Headers. (index.html, line 0)