面对这样的问题,Chrome 给出了以下错误。
无法加载http://localhost:3000/cars:对预检请求的响应未通过访问控制检查:“Access-Control-Allow-Origin”标头的值“null”不等于提供的来源. 因此,Origin 'null' 不允许访问。
这是我与服务器联系的请求:
getData () {
const url = "http://localhost:3000/cars";
const xhr = new XMLHttpRequest();
xhr.open("GET", url, true);
xhr.setRequestHeader('Content-type','application/json; charset=utf-8');
xhr.onload = function () {
const response = JSON.parse(xhr.responseText);
if (xhr.status == "200") {
return response;
} else {
console.error(response);
}
};
xhr.send();
}
这不是错误,而是安全限制。
发生这种情况是因为您发送此请求的页面未从该服务器(端口)加载
也许您只需要将发送请求的页面放置到发送请求的服务器
否则
你的网络服务器应该设置标题
access-control-allow-origin根据消息
你在那里
null*对于测试,在此处放置一个允许跨域请求的符号就足够了一般来说,这里为您提供跨域查询
能:
有一个 PHP 小技巧。这个技巧不仅适用于谷歌,也适用于您无权访问且无法添加 Access-Control-Allow-Origin 的任何网站 *
我们需要在我们的服务器上创建一个 PHP 文件(例如 getContentFromUrl.php)并访问它。
PHP
JS
这个怎么运作:
我们可以为按钮添加一个 onClick 事件。希望这可以帮助!