关于Node.js的httpClieint请求报错ECONNRESET的原因和解决措施

原文:

关于Node.js的httpClieint请求报错ECONNRESET的原因和解决措施

 

自己的一点理解:

1: Node.js提供的HttpServer默认设置了超时时间为2分钟,当一个请求的处理时间超过2分钟,HttpServer会自动将该请求的socket关闭掉,于是客户端便收到了 ECONNRESET 的错误信息了。可以参考Node.js的源码。

测试:

 postman 发送请求,2分钟后回复,postman已经收到回复报错:

关于Node.js的httpClieint请求报错ECONNRESET的原因和解决措施_第1张图片

服务器端:

关于Node.js的httpClieint请求报错ECONNRESET的原因和解决措施_第2张图片

解决办法,需要修改Node.js的HttpServer默认的超时时间:

关于Node.js的httpClieint请求报错ECONNRESET的原因和解决措施_第3张图片

 

当客户端发送请求为http.request模块时,需要同步更新http.request的模块超时时间设置。

这样就不会报超时错误了:

错误信息: {"code":"ECONNRESET"}

你可能感兴趣的:(关于Node.js的httpClieint请求报错ECONNRESET的原因和解决措施)