0
我试图实现一个异步方法,它对特定的API进行POST调用并检索其数据,然后将结果存储在用户的会话中。这项任务本身似乎很容易,但是当我这样做的时候,这是一种“即忘即忘”的风格。设置标题后设置会话
我不希望等待结果从外部API返回,而是让用户加载他请求的页面并继续浏览。只有当响应准备就绪后,我希望它保存在会话中。
一切似乎都正常工作,但唯一的问题是我设置会话,并继续下一个路线的一刻,一切都会丢失,就好像我从来没有在第一页中设置它。调试代码还表明该过程完成后没有任何错误,因此我怀疑在设置响应头之后设置会话时出现问题。但似乎无法理解为什么这应该是一个问题。
我正在使用nodejs express和mongodb会话&数据库处理。
router.get('/myroute', function(req, res, next) {
request({
url: endpoint,
method: "POST",
json: true,
body: jsonData
}, function(error, response, body) {
req.session.mykey = 'some response';
});
res.redirect('/otherroute');
});
router.get('/checkresult', function(req, res, next) {
res.json(req.session.mykey);
});
太棒了!奇迹般有效。 –