【问题标题】:Jsonp giving headers error in Angular 5Jsonp在Angular 5中给出标题错误
【发布时间】:2018-08-17 02:39:40
【问题描述】:

我正在使用 angular 5 HttpClientJsonpModule 来处理 jsonp。我正在关注this 文章。我已经在 app.module.ts 文件和我的服务中导入了所需的文件。

这是我的网址(末尾附加回调)。

validPrimaryCurrencyCodes = "https://api.independentreserve.com/Public/GetValidPrimaryCurrencyCodes&callback=JSONP_CALLBACK"

这里我使用 http.jsonp 调用来获取数据

getValidPrimaryCurrencyCodes() : Observable<any>{
    return this.http.jsonp(this.urls.validPrimaryCurrencyCodes, 'callback');
}

它在控制台中给我以下错误。

【问题讨论】:

    标签: angular jsonp


    【解决方案1】:

    您的网址中没有?,但您也不需要在网址中添加回调参数。它是自动添加的,您可以从错误中的 url 中看到,因此您应该将其删除。

    【讨论】:

    • 那么,调用时我应该写什么作为第二个参数。我已经从 url 中删除了 &callback=JSONP_CALLBACK 但它仍然给了我第二个 cors 错误,如图所示。
    • api.independentreserve.com 的服务器真的支持 JSONP 吗?你知道服务器必须打印出像callback ( {"data": "The JSON data"}); 这样的可执行Javascript,而不是普通的JSON
    • 我刚刚检查过,不,它没有。它返回 JSON,所以恐怕除非他们为 JSONP 提供其他一些端点,否则你不能对那个 api 进行 JSONP 请求。
    • 您能否推荐我可以在 Angular 5 中使用哪些替代方法来处理这些 api? chrome 扩展逻辑是如何工作的,我可以在 angular 中使用该逻辑吗?
    • 你无法绕过跨域保护。
    猜你喜欢
    • 2017-01-24
    • 2018-09-11
    • 1970-01-01
    • 2020-09-16
    • 2012-04-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多