我使用的是Node/express服务器.express的默认超时是120000毫秒,但这对我来说还不够.当我的响应达到120000毫秒时,控制台将记录POST /additem 200 120006ms,页面显示错误,因此我想将超时设置为更大的值.我该怎么做?

推荐答案

考虑到你问题中的日志(log),我假设你使用express.关键是在服务器上设置timeout属性(以下内容将超时设置为1秒,使用您想要的任何值):

var server = app.listen(app.get('port'), function() {
  debug('Express server listening on port ' + server.address().port);
});
server.timeout = 1000;

如果您不使用express,只使用vanilla node,那么原理是一样的.以下内容不会返回数据:

var http = require('http');
var server = http.createServer(function (req, res) {
  setTimeout(function() {
    res.writeHead(200, {'Content-Type': 'text/plain'});
    res.end('Hello World\n');
  }, 200);
}).listen(1337, '127.0.0.1');

server.timeout = 20;
console.log('Server running at http://127.0.0.1:1337/');

Node.js相关问答推荐

如何呈现ejs.renderFile中包含的子模板?

如何使用多个参数完成

PM2 是否需要成为其托管项目的依赖项?

如何获取mongoose中单个id数据的记录

Mongodb - 在数组数组中查找()

如何使用Stripe测试失败的收费?

如何获取文件的中间值?

express 和 mongoose 的新密码不正确

如何避免在 mongodb 聚合中查找重复结果?

在数组的另一个对象中获取数组的mongoose 对象

users.watch(在 gmail google api 中)如何收听通知?

file.slim.js 中的苗条是什么

Ansible 将以什么用户身份运行我的命令?

分块 WebSocket 传输

如何解决'npm应该在 node repl之外运行,在你的普通shell中'

Puppeteer:如何提交表单?

Node.js:如何附加到正在运行的进程并使用控制台调试服务器?

Javascript在try块内设置const变量

#!/bin/env是什么意思(在 node.js 脚本的顶部)?

npm install - javascript堆内存不足