2014-01-21 108 views
1

我在创建HTTP请求时存在问题。Angularjs - http请求已取消 - 报告404

该请求花了很长时间,因为它等待复杂的数据库查询。如果在此期间用户点击指向不同页面的链接(我们有几个不同的单页面应用程序),则该请求会被取消(这很好),但报告的状态是404。现在,有问题的请求不应该在正常的业务过程中失败,所以当它发生时,我们将它记录到错误报告服务(一个不同的服务器)。问题是,我们收到错误报告时,他们不是错误,只是取消了http请求。这是角度错误吗?是否有最佳做法来处理这个问题?

+0

你是什么意思“报告的状态是404?”如果客户在得到回复之前终止了连接,那么状态是如何得到报告的? –

+0

我的意思是调用http错误处理程序,它的状态参数是404。是的,我知道你很惊讶。我很惊讶。因此,这个问题。我本来希望没有回应!看来角是取消请求,然后调用我的错误处理程序,并给它404,然后加载新的页面。 – user1276273

+0

因此,用户导航,并在当前页面卸载之前,错误回调触发(可能是因为连接被终止,而不是因为服务器实际回应错误状态),是吗?我想你会在回调中将它记录到错误报告服务中?你有没有看过“拦截器?” –

回答