【发布时间】:2019-03-05 19:15:20
【问题描述】:
所以我开始看一个关于如何从 web api 获取数据的教程,而讲师写的第一行代码就是这个。
fetch('https://www.metaweather.com/api/location/2487956/')
然后他解释说,由于相同的来源政策,您无法从不属于您的网站获取数据,并使用了使用 crossorigin.me 网站的解决方法。它在视频中对他有用,但对我不起作用,而且总是给我这个错误:
跨域请求被阻止:同源策略不允许读取位于https://www.metaweather.com/api/location/2487956/ 的远程资源。 (原因:缺少 CORS 标头“Access-Control-Allow-Origin”)
我一直在寻找一个多小时,但我找不到单一的解决方案。如果有人可以帮助我,我将不胜感激。
【问题讨论】:
-
如果他们不设置 COR 标头,您将无法访问它。 developer.mozilla.org/en-US/docs/Web/Security/…
-
访问它的唯一方法是服务器端。如果他们没有 cors-headers,您将无法直接从您的网站访问其他网站的数据。
标签: javascript ajax api same-origin-policy