有没有办法在以后响应GET \ POST请求?

时间:2014-08-15 17:22:48

标签: node.js express response

使用Express(NodeJS),有没有办法保存请求的详细信息,以便以后完成响应? (基本上,请求挂起响应)。 不使用setTimeout()或sleep或任何其他延迟。

例如,如果这是我的功能:

function(req, res) {
    var data = req.body;
    setTimeout(function() {
        res.json(data);
    }, 3000);
}

是否可以在该函数范围之外使用(req,res)对象?

2 个答案:

答案 0 :(得分:2)

是的,您可以通过setTimeout

来完成
function(req, res) {
    var data = req.body;
    setTimeout(function() {
        res.json(data);
    }, 3000);
}

答案 1 :(得分:0)

或者,您可以使用expressjs response.setTimeOut函数来实现。

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

app.get("/", (req, res) => {
  res.setTimeout(5000, () => {
    res.send("hello");
  });
});

app.listen(4000, () => {
  console.log("app is listening on port 4000");
});