var http = new XMLHttpRequest();
var url = "http://example.com/";
http.crossDomain = true;
http.withCredentials = true;
http.open("GET", url, true);
http.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
http.send();
console.log(http.responseText);
当我尝试从 JavaScript 执行跨域请求(如代码中所示)时,它会向我抛出错误:请求的资源上不存在“Access-Control-Allow-Origin” header 。来源'http://localhost:8000 ' 因此不允许访问。我该如何解决这个问题,因为我不追求 JSONP 的解决方案。还有其他解决方案可以解决我的问题吗?而且我无法控制服务器端,因为它是第三方服务器。
最佳答案
无法使用纯客户端代码读取数据。
您需要从服务器发出请求,并让客户端代码从该服务器获取数据。
所述服务器要么与托管 JS 的页面同源,要么使用 CORS 向您的源授予权限。
关于javascript - 如何通过javascript发出跨域请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37658067/