RxJs-Ajax错误为0,而不是502发生了

时间:2019-07-18 13:42:38

标签: javascript ajax rxjs

我正在使用RxJS 6,它是ajax模块来获取数据。从我的API获取502后,我期望下面粘贴的响应对象的状态为502。但是状态为0

从各种问题来看,我知道状态0是从RxJS.ajax生成的所有响应对象的默认状态,并且在收到响应后,状态值将覆盖服务器提供的状态。

在这里,显然服务器提供了状态代码502,但是响应对象中的状态仍然是0

response

您遇到过这种行为吗?有修复/解决方法吗? 还是库中的合法错误,我应该将其发布到他们的问题跟踪器中?

1 个答案:

答案 0 :(得分:1)

想通了。

当API落在5xx上时,我们的服务器无法在tx1 tx2 tx6 tx5 tx7 tx3 tx4 响应中向浏览器提供适当的CORS标头。

这可防止Javascript成功覆盖响应对象,并捕获到状态为OPTIONS的错误。

应在服务器端进行处理,否则客户端可以推断出状态0应该作为状态0处理。 (不过,这有点骇人听闻,因为状态5xx通常是指网络中断之类的东西。)