【发布时间】:2021-04-30 00:14:33
【问题描述】:
我正在尝试使用 GET 方法从后端获取数据,但我总是无法获取数据。我收到以下错误:缺少 CORS 标头“Access-Control-Allow-Origin”。我不知道它是怎么发生的,因为我尝试使用 POST 方法到我的后端它工作。
这是我的浏览器工具截图
当我使用fetch 获取数据时,它总是发送 2 个请求,首先是 OPTIONS,然后是 GET。每次请求后我都会收到此错误,然后我尝试通过浏览器工具重新发送请求,并且它可以正常工作。
这是我的代码:
fetch("https://sample.com/api-v2/product/group",{
headers:{
'Token' : 'asdf213sacxcv'
}
})
.then(function (response) {
if (response.status !== 200) {
console.log(
"Looks like there was a problem. Status Code: " + response.status
);
return;
}
// Examine the text in the response
response.json().then(function (data) {
console.log(data);
});
})
.catch(function (err) {
console.log("Fetch Error :-S", err);
});
提前致谢
【问题讨论】:
-
需要在服务器开启CORS才能运行跨域请求,见developer.mozilla.org/en-US/docs/Web/HTTP/CORS
标签: javascript vue.js cors fetch