成功回调永远不会被JSONP请求调用
success callback never get invoked for a JSONP request
我有这个URL:https://cdn.static.wizzair.com/en-GB/TimeTableAjax?departureIATA=BUD&arrivalIATA=TLV&年份=2016&月=6
它会返回一个json。如果我用浏览器访问这个URL,或者如果我在浏览器上使用REST客户端(DHC)启动请求,它会起作用!现在,对于一个运行在https上的express服务器来说,我正试图使用jQuery来实现这个请求,但没有成功。
不知怎的,错误回调总是在执行,尽管我在网络调试中看到请求很好,并看到json响应!
我的代码:
/// removed old code ///
$.ajax({
method: 'GET',
url: "https://cdn.static.wizzair.com/en-GB/TimeTableAjax?departureIATA=BUD&arrivalIATA=TLV&year=2016&month=6&callback=?",
dataType: "jsonp",
success: function() { console.log("success"); },
error: function(err) { ;console.log(err); }
});
***编辑***
所以我知道这不会起作用,因为目标不支持jsonp。
将其更改为正常的GET请求将得到一个错误,并显示以下消息:
XMLHttpRequest无法加载https://cdn.static.wizzair.com/en-GB/TimeTableAjax?departureIATA=BUD&arrivalIATA=TLV&年份=2016&month=6。"Access Control Allow Origin"标头具有值https://wizzair.com',该值不等于提供的原点。原点'https://localhost:3000因此不允许访问。
这是意料之中的。但这是如何在我的浏览器和本地rest客户端上工作的呢?我做错了什么?
谢谢!
您请求的URL返回的是JSON,而不是JSONP。
只有当服务器被设计为使用JSONP格式的响应来响应JSONP请求时,JSONP才会工作。
欲了解更多信息,请参阅什么是JSONP关于
关于对问题的重大编辑:请参阅此副本。
- JSONP请求返回结果,但也触发error_callback
- 在localhost Dev Box上测试JSONP请求的最佳方式
- 成功回调永远不会被JSONP请求调用
- 向Yahoo Finance API发出JSONP请求时获得400错误请求
- 响应 JSONP 请求时循环的无限空的目的是什么
- 无法向谷歌搜索网页发出JSONP请求
- JavaScript JSONP请求错误--未捕获的语法错误:意外的令牌:
- AngularJS http.jsonp请求.then和.success函数不起作用
- 使用jQuery进行跨域ajax JSONP请求
- ajax jsonp请求503响应
- jQuery JSONP 请求在 Internet Explorer 中经常失败
- 我可以在 jsonp 请求的响应中设置 cookie 吗?
- Chrome扩展JSONP请求访问全局变量
- Jquery jsonp 请求回调函数未触发
- Mootools - 如何链接多个 jsonp 请求
- 对 JSONP 请求的工作方式感到困惑
- 如果对 JSONP 请求的服务器响应未正确包装在函数中,是否有任何方法可以覆盖“无效标签”错误
- 图像的jQuery JSONP请求得到403错误
- Ext.data.JsonP请求意外的令牌:
- JSONP请求错误