【发布时间】:2014-02-17 00:15:29
【问题描述】:
当使用$http 服务进行调用时,如果用户在调用仍在进行时离开页面,则似乎 HTTP 请求被中止,promise 调用其error() 处理程序。但是,我似乎无法弄清楚如何检测此错误何时由从远程服务器获取响应的实际问题(服务器关闭、网络关闭、超时等)触发,而不是何时简单地取消请求,因为用户导航。这两种情况似乎都将相同的几乎空的响应状态参数传递给错误处理程序。 (data 为空,status 为 0,等等)。
我考虑使用beforeUnload 事件处理程序来检测导航并假设在该事件之后遇到的任何错误都应该被忽略,但是,移动 Safari 和其他浏览器可能不支持此事件,因此它不是一个可靠的解决方案。
这似乎是一个常见问题 - 人们通常如何处理它?
【问题讨论】:
标签: angularjs angularjs-service