【发布时间】:2017-01-09 18:56:29
【问题描述】:
我有 nodejs 应用程序,我使用 typescript 和 Express 服务器和 express-session。
我还有从客户端获取请求和响应的路由功能。
private async changeVis(req: express.Request, res: express.Response) {
Let mySession=._deepClone(req.session['blah']);
MyModule.changeViz(mySession).then(function(myRes){
req.session["blah"] = myRes;
console.log('before res.json');
res.json("");
console.log('after res.json');
});
我的问题是,那行
res.json("");
大约需要 5 秒,“res.json”出现之前和“res.json”出现之后的时间差为正负 5 秒。
现在,当我不使用会话时,功能是这样的:
private async changeVis(req: express.Request, res: express.Response) {
MyModule.changeViz().then(function(){;
console.log('before res.json');
res.json("");
console.log('after res.json');
});
没有增量,“after res.json”紧跟在“before res.json”之后。
我尝试添加 res.end(),但没有帮助。
有人可以帮忙吗?
【问题讨论】:
-
你是如何测量这 5 秒的?
-
console.time("res");console.timeEnd("res")
-
您运行的是哪个版本的 Node?你能用一个简单的 Express 应用重现这个吗?
-
节点版本 6。我现在更喜欢使用 express
标签: node.js express express-session