Javascript Safari因“访问控制允许标头不允许请求标头字段内容类型”而导致XMLHttpRequest(POST)失败
我只是尝试使用httpbin测试XMLHttpRequestsJavascript 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
<!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)