Ajax 请求失败
Ajax request failing?
我正在尝试从 API 中检索 json 数据。它一直失败,但是当我查看Firebug的"网络"选项卡时,我可以看到GET请求已执行并返回了正确的数据。我做错了什么,还是有人有关于如何调试的提示?
编辑:已更改为数据类型 json,错误状态代码为 0
谢谢
$.ajax({
url: 'http://localhost:55894/api/Test/All',
data: {
format: 'json'
},
error: function () {
alert('Error');
},
dataType: 'jsonp',
success: function (data) {
alert('Ok');
},
type: 'GET'
});
根据您提供的信息,失败的原因是您没有跨域访问策略设置。因为您使用不同的端口来托管网站和 API,所以您遇到了此问题。您可以使用适当的安全设置设置跨域.xml也可以将 API 和 Web 服务器移动到同一端口。
查看此内容以获取更多信息:http://en.wikipedia.org/wiki/Same-origin_policy
你可以试试这种方式:
$.ajax({
type: 'GET',
url: 'url api here',
beforeSend: function() {
},
success: function(data) {
},
error: function(xhr) { // if error occured
},
complete: function() {
},
dataType: 'json'
});
JSON
和JSONP
是不同的。如果您使用的是 JSONP
,服务器端必须准备好支持它。看起来您不像在使用JSONP
.
因此,只需将dataType
更改为 'json'
,因为您正在"尝试检索 json 数据"。
相关文章:
- 一台特定计算机的Ajax请求数据未定义/失败
- 当我在chrome中切换设备模式时,$http.get请求失败
- Ajax错误检查-如果Ajax请求失败,如何防止内容发生更改
- Javascript-为什么我的JQueryAJAX请求失败
- Android/Chrome jQuery AJAX请求在到达服务器之前失败,并出现parserror
- 由于adblock,Javascript Ajax请求在chrome中失败,我有什么选择
- AJAX 请求不会在 400 个错误查询上执行失败
- Python POST 请求失败
- Ajax GET 请求的 URL 失败,但 hurl.it 相同 URL 的 GET 请求有效.什么给
- 对php的Angular post请求失败
- xml在使用SSL https请求时失败
- JQuery发布请求失败,发布后没有警报
- AJAX获取请求有时会在iOS Safari上失败
- Jquery Ajax请求失败
- AJAX请求json失败
- 如何根据ajax get请求的成功/失败在适当的范围内更改javascript变量
- node.js请求js与curl相比失败
- 如何判断哪个ajax请求失败
- gwt使用本机javascript向远程服务器发送POST请求失败
- 在Jasmine单元测试中,如何强制失败回调来触发失败请求