我正在撰写一个网络应用程序,该应用程序将显示“' something'已经部署到不同的环境(例如测试,QA,prod)和部署的状态。
在此之前,我使用res.send将订单发送到浏览器,如下所示。
res.send({order_form : JSON.stringify(order_form)});
这只是为了表明已收到订单并且将遵循自动部署。
我的想法是简单地做另一个res.send之后,使用已经部署测试的订单的信息更新浏览器,然后显示它已经部署到QA ...等等。
我遇到的问题是你无法进行多次res.send更新,因为它会设置标题和响应中的所有内容。
所以在谷歌搜索后我发现我可以做res.write或res.render,但是当我在res.send之后或之前添加其中一个时,我得到相同的错误信息(可以' t set header)。
所以我要问的是,我将如何遵循网络编程的惯例。我最后不能做一个res.send,因为部署的状态必须实时动态更新。
谢谢!
编辑:有点不确定问题中的正确术语,所以添加了一个(?)
答案 0 :(得分:1)
我很确定网络套接字是你所追求的。流行的node.js框架是socket.io
查看此示例:http://socket.io/docs/#using-with-node-http-server
使用websockets,您可以设置服务器进行处理,并emit
将事件返回给客户端。 emit事件就像您的res.send()
。
在客户端中,您可以收听此事件并相应地更新浏览器中的UI。