Angular 2,没有“访问控制允许来源”
Posted
技术标签:
【中文标题】Angular 2,没有“访问控制允许来源”【英文标题】:Angular 2 , No 'Access-Control-Allow-Origin' 【发布时间】:2017-07-24 22:32:21 【问题描述】:我们有 angular 2 应用程序,我们正在尝试使用 Deezer API,但是当我尝试向 Deezer 发送 GET 请求时,我得到了给定的错误。我尝试了很多解决方案,例如使用 jsonp 并将 'Access-Control-Allow-Origin' : ' * ' 添加到 .htaccess,但它们都没有帮助。我已经附加了我在服务中使用的功能。
XMLHttpRequest 无法加载 https://api.deezer.com/search/track?q=emin。请求的资源上不存在“Access-Control-Allow-Origin”标头。因此不允许访问源“www.example.net”。
searchFromDeezer()
let url = 'https://api.deezer.com/search/' + this.search_type + '?q=' + this.search_value + '';
return this._http.get(url).map(res=>res.json())
我是如何使用 jsonp 的:
like below.
searchFromDeezer()
let url = 'https://api.deezer.com/search/' + this.search_type + '?q=' + this.search_value + '?callback=JSONP_CALLBACK';
return this._jsonp.get(url).map(res=>res.json())
【问题讨论】:
使用 JSONP 见以下链接:link 正如我提到的我已经使用过它,我收到此错误:Uncaught SyntaxError: Unexpected token : vendor.bundle.js:59960 EXCEPTION: Response with status: 200 Ok for URL: ***.com/questions/23185964/… 伙计们,我用过 jsonp ,我正在更新我的代码 服务器需要处理OPTIONS动词并返回HTTP OK 【参考方案1】:已解决
我尝试使用 jsonp 但出现错误,将'&output=jsonp&callback=JSONP_CALLBACK' 添加到我的链接后问题已得到解决。
【讨论】:
以上是关于Angular 2,没有“访问控制允许来源”的主要内容,如果未能解决你的问题,请参考以下文章
Angular 和 Golang “没有访问控制允许来源......”
Angular 和 Laravel CORS 访问控制允许来源问题
Django Angular cors错误:不允许访问控制允许来源