【发布时间】:2021-04-15 00:40:52
【问题描述】:
我正在尝试拨打Freesound API。 Fetch 抛出未经授权的错误,而 Postman 有效。
代码
const BASE_URL = "https://freesound.org/apiv2/sounds/";
const rain = "58835";
const APIKEY = "foo";
const headers = {
method: "GET",
headers: {
'Authorization': `Token ${APIKEY}`,
},
mode: "no-cors",
};
fetch(BASE_URL + rain, headers)
.then((response) => response.json())
.then((json) => console.log(json))
.catch((err) => console.log(err));
【问题讨论】:
-
您发布了您的 API 密钥。你现在需要买一个新的。不要这样做!
-
在 Postman 上,您是否在响应中获得了 CORS 标头。具体来说,
Access-Control-Allow-Origin?如果是这样,您可以将模式设置为cors,它应该可以工作。 -
我在阅读了这些问题后写了an article about no-cors。希望对您有所帮助!
标签: javascript fetch-api