长POST node.js上的套接字超时

哥伦拜恩

使用node.jshttp.createServer监听POST请求。如果要求快速完成,则一切正常。如果请求完成时间> 5秒,我将没有响应返回给客户端。

在创建的套接字上添加了事件侦听器:

server.on('connection', function(socket) {
    log.info('SOCKET OPENED' + JSON.stringify(socket.address()));
    socket.on('end', function() { 
      log.info('SOCKET END: other end of the socket sends a FIN packet');
    });

    socket.on('timeout', function() { 
      log.info('SOCKET TIMEOUT');
    });

    socket.on('error', function(error) { 
      log.info('SOCKET ERROR: ' + JSON.stringify(error));
    });

    socket.on('close', function(had_error) { 
      log.info('SOCKET CLOSED. IT WAS ERROR: ' + had_error);
    });
});

在请求过程中(启动后约10秒后)收到了这些消息:

info: SOCKET TIMEOUT
info: SOCKET CLOSED. IT WAS ERROR: false

但是在客户端套接字上不会关闭,因此客户端等待响应。成功完成请求结束,发送响应(在关闭的套接字上!),但客户端仍在等待。

不知道如何阻止这些超时。从代码中删除了所有超时。试图添加KeepAlive,没有结果。

socket.setKeepAlive(true);

如何防止套接字公告超时?

坏峡谷

根据节点的setTimeout文档,发生超时时不会断开连接。这就是浏览器仍在等待的原因。您仍然需要end()或destroy()套接字。您可以通过在套接字上调用setTimeout来增加超时。

socket.setTimeout(1000 * 60 * 300); // 5 hours

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

长POST node.js上的套接字超时

来自分类Dev

降低Node.js套接字连接的超时

来自分类Dev

为每个新的套接字node.js设置超时

来自分类Dev

Node.js-让客户端套接字在5秒超时后重试

来自分类Dev

Node.js-让客户端套接字在5秒超时后重试

来自分类Dev

Kafka,Node.js客户端(Kafkaesque)套接字默认超时

来自分类Dev

TCP套接字上的长连接

来自分类Dev

Node.js套接字连接错误

来自分类Dev

Node js的多个路由获取套接字

来自分类Dev

Laravel Node.js套接字IO

来自分类Dev

Node js Mongodb查询号长

来自分类Dev

使用长HTML的Node.JS Nodemailer

来自分类Dev

Node js Mongodb查询号长

来自分类Dev

套接字在http.request上挂接到Node.js MongoDb服务器

来自分类Dev

防止在长数据库请求时Node.js超时

来自分类Dev

Flutter套接字IO无法连接到Node JS套接字IO服务器

来自分类Dev

Node.js群集模块不会在http.Server.close()上释放套接字/端口

来自分类Dev

Node.js群集模块不会在http.Server.close()上释放套接字/端口

来自分类Dev

我应该使用哪个node.js套接字引擎?

来自分类Dev

Node.js-套接字断开事件无法正常工作

来自分类Dev

node.js-处理TCP套接字错误ECONNREFUSED

来自分类Dev

Node.js网络套接字内存泄漏?

来自分类Dev

Node.js MongoDB套接字关闭错误

来自分类Dev

Node.js-如何跟踪连接的套接字对象?(TCP)

来自分类Dev

Node.js中的套接字构造器问题

来自分类Dev

Node.js https.request()错误:套接字挂断

来自分类Dev

Node.js,如何检测关闭的套接字?

来自分类Dev

使用https的Node.js中的套接字挂起错误

来自分类Dev

Node.JS,套接字IO:相同的源策略错误

Related 相关文章

热门标签

归档