我确实有一个Angular 5应用程序,该应用程序使用HTTPCLIENT进行后端服务调用。
如果服务需要一些时间返回,则角度触发了第二个呼叫(恰好在120秒之后),这不应发生。
我已经进行了验证,并且在代码中没有重试逻辑,也没有其他函数固定再次调用同一服务。
有人可以帮助我理解这是Angular 5中的错误还是某种默认的Beahvior。
public appPost(inputObj: InputObj) {
return this.httpClient
.post('_url_', inputObj)
.timeoutWith(300000, Observable.throw({"error" : "The Application has timed out. Please Contact Administrator."}));
}
this.appService.appPost(inputObj).subscribe(
(resp: any) => {
//do something
},
error => {
//throw error
}
);
另外,我进行了一些调试,发现第二个呼叫未显示在Chrome调试工具的网络部分中。但是,如果您添加一个拦截器并记录了呼叫,它将在那里分配。
我找到了解决该问题的解决方案。由于Web Pack代理设置的默认超时。
发生了问题。https://stackoverflow.com/a/49089702/10704788