如何设置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
一起来学习吧!