我的Angular 4.3.2代碼正在調用後端服務,該服務需要2-4分鐘才能返回。使用默認的this.http.get
代碼,我發現默認超時在2分鐘後啟動。但是當我嘗試設置超時時間為2分鐘以上時,它失敗了,因為它永遠不會讓超時時間超過2分鐘。
我嘗試了100、100000(1.7分鐘)和114000(1.9分鐘),這些都可以正常工作,因為它們在那些值時被超時。但是當我嘗試126000(2.1分鐘)、180000(3分鐘)和1800000(30分鐘)時,再次看到它在2分鐘後超時。
this.http.get('myUrl')
.timeout(126000)
.map((res: Response) => this.convertResponse(res));
我也尝试过使用.timeoutWith(126000, Observable.throw(new Error("Timed out")))
,但没有成功。