【发布时间】: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:
-
伙计们,我用过 jsonp ,我正在更新我的代码
-
服务器需要处理OPTIONS动词并返回HTTP OK
标签: api http angular cors deezer