【发布时间】:2016-04-04 21:03:27
【问题描述】:
我有一个使用 express-ws (https://www.npmjs.com/package/express-ws) 的服务器。
app.ws("/someroute", (ws, req, res) => {
ws.on('message', (message) => {
someResponse(req.user.name, message, req.sessionID)
});
});
'someResponse' 是异步的,会调用各种数据库,并且'someResponse' 的完成时间很大程度上取决于确切的消息。对于每个 sessionID,我希望按照收到消息的顺序评估“someResponse”。也就是说,如果有两条消息,对“someResponse”的第一次调用应该在对“someResponse”的第二次调用开始之前完成。 'someResponse' 确实返回了一个承诺,所以如果解决方案中包含 es6 Promises 会很好。谢谢你的帮助。
【问题讨论】:
-
很难理解你的意思,你能用一个更简单的例子吗?
标签: node.js express asynchronous server queue