否'访问控制允许来源'无论我尝试使用什么url,header都不存在

No 'Access-Control-Allow-Origin' header is not present always shows no matter what url I try to use

本文关键字:什么 url 不存在 header 访问控制      更新时间:2023-09-26

我正在尝试学习如何使用javascript解析API,因此我试图通过一些get调用获得一些json。

在我的脚本中,我有

<script>
    function foo() {
            var request = window.superagent;
            var url = 'http://www.google.ca';
            request
            .get(url, function(response) {
                    console.log(response);
            })
            .set('Accept', 'application/json');
    }
foo();
</script>

无论我使用什么url,我总是会收到这个错误

XMLHttpRequest cannot load http://www.google.ca/. No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://server.com' is therefore not allowed access.
(index):22 Error: Origin is not allowed by Access-Control-Allow-Origin
at s.crossDomainError (https://cdnjs.cloudflare.com/ajax/libs/superagent/1.2.0/superagent.min.js:1:7899)
at XMLHttpRequest.s.end.D.onreadystatechange (https://cdnjs.cloudflare.com/ajax/libs/superagent/1.2.0/superagent.min.js:1:8551)

我尝试使用各种示例获取请求url,如维基百科、nba统计数据、谷歌等。当我在浏览器中输入url时,这些url很好,但当我尝试使用javascript下载数据时,它不起作用。

我在我的ubuntu笔记本电脑上使用本地的apache2服务器。我也在使用javascript的超级代理库,但我也尝试过使用jquery和ajax,结果出现了同样的错误。


所以显然我需要使用一个使用cors的url。问题是

http://savvastjortjoglou.com/nba-shot-sharts.html?utm_source=Python+每周+时事通讯&utm_campaign=5185ff0538-Python_Weekly_Issue_202_July_30_2015&utm_medium=电子邮件&utm_term=0_9e26887fc5-5185ff0538-312727397

本教程只是做了一个请求.get(url),这是nba统计数据的url,并得到了他的数据。他没有犯错?如何使用不使用cors的url来获取数据?

CORS也在浏览器端实现,不允许javascript从未知网站加载恶意内容。如果你仍然试图在客户端废弃CORS插件,你也应该尝试使用它。

https://chrome.google.com/webstore/detail/allow-control-allow-origi/nlfbmbojpeacfghkpbjhddihlkkiljbi?hl=en