如何設置http請求任意大小的超時時長呢?
一開始以為是Angular http有設定超時的機制, 最多只能120秒,所以一直在前端方向找解決方案。
baidu一下,沒有想要的答案。 於是google,發現確實有人在問同樣的問題, 上面的解決方案是用 Proxy config來處理
Angular教程中關於代理使用方法:
https://www.angular.cn/guide/build#proxying-to-a-backend-server
但是經過測試,發現也沒起作用。
后面實在沒法,轉化了一下思路,是不是服務器端不支持?
果不其然,把 server端的timeout設置了,然后測試,發現真的起作用了,就這個小問題,浪費了很多時間,這里小記一下,供后人參考,節約寶貴時間。
--后端如果是用Node的話,直接設置timeout即可,例如設置3分鍾
server.setTimeout(3*60*1000);
不設置timeout
var server = http.createServer(app); server.setTimeout(0);
總結:
Node服務器對於每個請求的時長默認為120s, 一旦超過這個時間,連接就會被關閉,所以,所以只需要設置 server的timeout即可解決,如上代碼所示。
Angular 技術交流群
952754544
一起來學習吧!