linux

Linux Node.js配置中如何设置超时

小樊
56
2025-09-06 16:56:11
栏目: 编程语言

在Node.js中,可以通过设置HTTP服务器的timeout属性来配置超时。以下是一个示例,展示了如何在Node.js中创建一个HTTP服务器并设置超时:

const http = require('http');

const server = http.createServer((req, res) => {
  // 处理请求
  res.writeHead(200, { 'Content-Type': 'text/plain' });
  res.end('Hello World\n');
});

// 设置超时为 5 秒(5000 毫秒)
server.setTimeout(5000, () => {
  console.log('请求超时');
  server.close(); // 关闭服务器
});

server.listen(3000, () => {
  console.log('服务器运行在 http://localhost:3000');
});

在这个示例中,我们创建了一个HTTP服务器,并在其上设置了一个5秒的超时。如果在5秒内没有收到客户端的任何数据,服务器将触发超时事件,打印"请求超时"并关闭连接。

如果你使用的是Express框架,可以通过以下方式设置超时:

const express = require('express');
const app = express();

app.get('/', (req, res) => {
  // 处理请求
  res.send('Hello World!');
});

// 设置超时为 5 秒(5000 毫秒)
app.use((req, res, next) => {
  req.setTimeout(5000, () => {
    console.log('请求超时');
    res.status(408).send('请求超时');
  });
  next();
});

app.listen(3000, () => {
  console.log('服务器运行在 http://localhost:3000');
});

在这个示例中,我们使用Express框架创建了一个HTTP服务器,并通过中间件设置了超时。如果在5秒内没有收到客户端的任何数据,服务器将触发超时事件,打印"请求超时"并返回408状态码。

0
看了该问题的人还看了