是否可以从express发送响应,并在继续之前等待返回响应?
典型情况是这样的
服务器A向服务器B发送请求
服务器B处理请求并发送回服务器A
服务器B在继续执行之前等待服务器A的响应
服务器A进一步处理来自服务器B的响应并将其发送回服务器B
然后,服务器B处理所需的其余处理。
我的理解是通常这是通过回调来处理的。在表达中我希望做类似
的事情 res.write('response', callback);
function callback() {
//do stuff
}
我不认为使用res.write方法可以实现这一点。我可以使用另一种方法来使用express来获得此功能吗?我之前从未使用过socket.io
,但这似乎是一个websockets非常有用的场景。这个假设我错了吗?
答案 0 :(得分:0)
res.on('finish', callback);
当最后一个数据被提供给操作系统处理时发送。
http://nodejs.org/api/http.html#http_event_finish
但是,如果您需要知道客户端何时接收/处理数据,则客户端必须将某些内容发送回服务器,在这种情况下,socket.io可以提供帮助。
答案 1 :(得分:0)
我感谢所有人的回复和帮助,我最终使用会话来获得我需要的东西。
var session = require('express-session');
再次感谢