Closed wsdo closed 2 years ago
"stack": "Error: read ECONNRESET\n\tat TCP.onStreamRead (node:internal/stream_base_commons:220:20)", "message": "read ECONNRESET, POST http://up-z1.qiniup.com/ -1 (connected: true, keepalive socket: true, socketHandledRequests: 1, socketHandledResponses: 0)\nheaders: {}", "errno": -54, "code": "ECONNRESET", "syscall": "read", "name": "ResponseError", "path": "/", "status": -1, "headers": {}, "res": { "status": -1, "headers": {} } }}
这个一般还是和客户端网络环境相关。在长连接的前提下,服务端长时间未收到客户端的数据,于是先于客户端关闭了 TCP。而客户端此时还未同步到关闭状态,认为长连接还在就复用了连接发送数据。结果就是被服务端直接拒绝。
SDK 针对这个错误,后续如果能做的也是重试,重新建立连接继续上传。
目前,怎么解决呢?必现的, 第一个ok ,后面上传都不可以了
一般重试即可。
能否具体提供下具体环境信息?
操作系统、NodeJS 版本、SDK 版本等。看下能否稳定复现。
另外您这边到 http://up-z1.qiniup.com/ 的网络状态如何?
"stack": "Error: read ECONNRESET\n\tat TCP.onStreamRead (node:internal/stream_base_commons:220:20)", "message": "read ECONNRESET, POST http://up-z1.qiniup.com/ -1 (connected: true, keepalive socket: true, socketHandledRequests: 1, socketHandledResponses: 0)\nheaders: {}", "errno": -54, "code": "ECONNRESET", "syscall": "read", "name": "ResponseError", "path": "/", "status": -1, "headers": {}, "res": { "status": -1, "headers": {} } }}