无法使用fetch()获得api响应

时间:2019-05-16 14:42:44

标签: javascript node.js api next.js

我正在尝试使用fetch()来获取浏览器控制台次数的数据,但无法获取。 对于跨浏览器问题,我也使用模式:no-cors,但没有找到解决方案。 请帮帮我,我现在很沮丧

我已经尝试过的代码:

await fetch("https://api.sandbox.bigbuy.eu/rest/catalog/productsstock.json", {
  method: "GET",
  mode: 'no-cors',
  headers: { Authorization: `Bearer XXXXXXXXXXXX` }
})
.then(response => response.json())

响应为:

SyntaxError: Unexpected end of input

1 个答案:

答案 0 :(得分:3)

您说过mode: 'no-cors',但您是在进行跨域请求。

未经CORS的许可,您无法跨来源读取数据。

通过明确关闭CORS,您正在告诉fetch将响应设置为无,并且在未获得CORS许可的情况下尝试跨源阅读时不会引发错误。

将其更改为mode: 'cors'。请注意,api.sandbox.bigbuy.eu必须授予您读取数据的权限。