WCF JSONP jQuery没有传递正确的状态

时间:2011-11-04 23:27:06

标签: jquery wcf jsonp http-status-codes

我的问题很直接。我希望在调用WCF服务时通过JSONP结果将正确的状态代码传递给我的成功或错误方法。

当WCF处理jsonp响应并且状态代码不是200时,它将状态代码作为回调方法中的第二个参数发送。这对我来说似乎是合乎逻辑的,但是我无法在任何地方找到JSONP规格,看看它的规格是否正确。

返回的内容是:jQuery123456(null,401); 然后jQuery将此视为成功,调用我的成功方法,但401无处可寻。我通过执行console.dir(arguments);

来确保这一点

我现在要做的是覆盖回调方法名称并自己处理所有这些,但我宁愿不必这样做。

需要在jQuery中支持这样的事情。

更新:您无法覆盖该方法,因为jQuery认为存在错误并弹出错误消息。

2 个答案:

答案 0 :(得分:0)

我怀疑这是因为JQuery无法知道请求的状态,因为它是通过脚本标记而不是XHR对象完成的。如果你研究一下JQuery的深度,'200'会被传递给done()回调。

答案 1 :(得分:0)

您是否知道无法使用JSONP方法访问状态代码,您可以从Angularjs开发人员那里读到这个答案非常清楚: https://github.com/angular/angular.js/issues/1423#issuecomment-10768224

托马斯