【发布时间】:2019-01-24 13:54:12
【问题描述】:
我试图向 API 发出一个简单的请求
fetch('someurl').then((data) => console.log(data))
但我得到了经典的No 'Access-Control-Allow-Origin' header is present on the requested resource.
如何在客户端解决这个问题?还是 API 作者更改它并添加正确的响应标头的唯一方法?
【问题讨论】:
-
如果服务器不允许,则无法发出此请求。
-
标头必须由服务器设置
-
你不能。服务器不允许来自其他域的请求。
-
这是一项安全功能,可防止某人使用不应使用的资源。如果您可以访问服务器端代码,则需要实现 CORS 标头,如果您没有,那么您不能/不应该这样做。
-
查看 API 是否支持 JSONP 回调 URL,这可能是您唯一的选择。另请参阅问题Use of success / jsonpCallback with ajax request 的已接受答案
标签: javascript url cors access-control