我正在为一个带有cordova(android&ios)的angularjs应用程序进行离线处理。我编写了一个http拦截器,它检查http请求的状态,并决定要做什么。
一个月前我有一个工作版本,突然这个版本停止工作了。我发现我正在检查http状态0
。现在返回-1
,但我不知道为什么。
responseError: function(response) {
console.log(response.status); // this returns now -1
}
所以我的问题是:
ajax请求的标准http代码是什么,定义了网络不可用、脱机、超时等情况……无法访问服务器时的所有内容(例如,在开发过程中关闭服务器、移动连接中断或速度太慢并超时…)
状态码是由浏览器设置的,还是由angularjs操作的?
每个浏览器的代码都一样吗?台式机和移动设备?
代码
0
和-1
之间有什么区别? 最佳答案
随着http状态代码0的处理,angular的最新版本发生了变化。
Here is a github discussion based on the change.
我希望你现在已经解决了你的问题!