gpt4 book ai didi

node.js - req.setTimeout 和 socket.setTimeout 有什么区别?

转载 作者:搜寻专家 更新时间:2023-10-31 22:57:19 24 4
gpt4 key购买 nike

我有两个选项可以为我的 http 请求设置超时。我不确定它们的区别。

第一个是:

req.setTimeout(2000,function () {
req.abort();
console.log("timeout");
self.emit('pass',message);
});

第二个是:

req.on('socket', function (socket) {
socket.setTimeout(2000);
socket.on('timeout', function() {
req.abort();
self.emit('pass',message);
});
}

最佳答案

socket.setTimeout 设置套接字的超时时间,例如实现 HTTP Keep-Alive。

request.setTimeout 确实会在内部调用 socket.setTimeout,只要套接字已分配给请求并已连接。这在 documentation 中有描述。 .

因此,没有区别,你可以选择走哪条路。当然,如果您手头已有请求,您会坚持使用请求的 setTimeout 函数,而不是挖掘底层套接字。

关于node.js - req.setTimeout 和 socket.setTimeout 有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14727115/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com