Express server res.json("") 需要很多时间
Express server res.json("") take a lot of time
我有 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 秒,'before res.json' 出现时间和 'after 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(),但没有帮助。
有人可以帮忙吗?
因为你声明函数是异步的。您的 res 对象将等到函数中的所有进程都结束。
您可以在 res.end() 之后创建所有其他功能;
或者从函数
中删除异步
我有 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 秒,'before res.json' 出现时间和 'after 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(),但没有帮助。
有人可以帮忙吗?
因为你声明函数是异步的。您的 res 对象将等到函数中的所有进程都结束。 您可以在 res.end() 之后创建所有其他功能; 或者从函数
中删除异步