WebSocket 的技术,一般用于服务端推送数据给客户端,而客户端不需要刷新就能收到数据, 以前是用轮询的技术,但是轮询的效率低,非常浪费资源(因为必须不停连接,或者 HTTP 连接始终打开)。因此,工程师们一直在思考,有没有更好的方法。WebSocket 就是这样发明的。
WebSocket 一般用于,如股票交易数据的推送,天气预报的推送,聊天功能还有我下面要说的扫码点餐功能等等。
如果我们一个餐厅吃饭,只需要扫桌上的二维码就能点餐,我们好几个人在点餐的时候,某一个人点了‘猪大肠炒辣椒’,在坐的其它人就可以不用刷新就能在购物车看到有人点了这一道菜,防止重复点。
先看下效果图:
这里用到WebSocket的插件是socket.io,结合express
这是客户1:
这是客户2和客户3(代码和客户1一样的):
这样就可以根据业务需求无刷新监听对方点了什么菜了。