Chasing-coins api cors 问题

Chasing-coins api cors issue

所以我不太确定我做错了什么,但是我在尝试对 [=29= 进行 API 调用时遇到了 cross-origin 请求被阻止的问题].显示的两个原因:

  1. CORS header 'Access-Control-Allow-Origin' 缺失
  2. CORS 请求未成功

这是我的代码

fetch('https://chasing-coins.com/api/v1/coins', {
  method: 'GET',
  headers: { 'Access-Control-Allow-Origin': '*' }
})
.then(response => console.log(response))

我做错了什么?

编辑:不确定这是否有影响,但我使用的是本地主机并测试了 firefox 和 chrome,两者都不起作用

这与托管 API 的服务器的 CORS 问题有关。来源 API 没有设置允许浏览器从不同来源请求资源的配置,因此从不同来源向浏览器发出的任何请求都将以飞行前错误告终。

在TCP/IP握手请求期间发生飞行前错误,此时确认来源,如果服务器未配置为处理跨来源请求,浏览器将不会完成请求符合预期。

要解决这个问题,您将需要使用后端服务器(例如 nodejs)来查询 API 并将其服务到您的前端代码。这将起作用,因为当从外部 APIs 请求资源时,nodejs 没有 CORS 策略。

这也是为什么 CURL 和 Postman 等应用程序可以使用 API,因为它们也不对请求强制执行 CORS 策略。