我正在尝试让一个请求等待,直到收到另一个请求-特别是更改了数组对象。
我有一系列的回复var responses = {};
收到帖子后,它将ID密钥写入数组。
app.post('/', function (req, res) {
var postID = idGen();
responses[postID] = "Waiting for Response";
//does some other stuff
}
几分钟后,我将收到另一条包含ID和新字符串的帖子。
app.post("/response/*", function (req, res) {
if (req.method == 'POST') {
var whole = ''
req.on('data', (chunk) => {
whole += chunk.toString('utf8');
if (whole.length > 1e6) {
req.connection.destory();
}
})
req.on('end', () => {
//updates array with response
res.send("Received");
})
}
})
我正在寻找一种方法,以使此响应可以等到数组的值被更改或收到具有相同ID的帖子。
app.post("/getResponse", function (req, res) {
//wait for response[req.body.id] value to change
res.send(responses[req.body.id]);
})