📅  最后修改于: 2023-12-03 15:03:13.345000             🧑  作者: Mango
在 Node.js 中,http.ServerResponse.setTimeout()
方法允许设置服务器响应的超时时间。如果在超时时间内服务器没有作出响应,则自动关闭该连接。
response.setTimeout(msecs[, callback])
msecs
:指定超时时间(以毫秒为单位)。callback
:可选参数,超时后执行的回调函数。该方法没有返回值。
以下示例演示如何使用 http.ServerResponse.setTimeout()
方法:
const http = require('http');
const server = http.createServer((req, res) => {
res.setHeader('Content-Type', 'text/plain');
// 设置超时时间为 10 秒
res.setTimeout(10000, () => {
res.end('Server timed out.');
});
res.write('Hello, world!');
});
server.listen(3000, () => {
console.log('Server listening on port 3000');
});
在上面的示例中,我们在服务器响应对象 response
中使用 setTimeout()
方法设置了超时时间为 10 秒。当超时时间到达后,执行回调函数,结束响应并返回 "Server timed out." 字符串。
http.ServerResponse.setTimeout()
方法必须在响应首次写入之前调用,否则会抛出异常。