一種客戶端與服務(wù)端基于http的全雙工通信方式
解決了服務(wù)端往客戶端數(shù)據(jù)推送的問題
客戶端
必要條件:
- 明確websocket的四種狀態(tài) onopen onclose onerror onclosing
- 引入socketJS
用法: - 新建websocket實(shí)例,var websocket = new WebSocket(URL)
- 在onpen狀態(tài)下可以onsend 、onmessage,同時(shí)可以在其他三種狀態(tài)下定義function
服務(wù)端
- 配置websocket入口,實(shí)現(xiàn)websocketconfigurer接口,重寫registerwebsockethandler方法,為配置入口,允許訪問的域,注冊(cè)handler、支持socketJS以及攔截器,registry.addhandler起任務(wù)分發(fā)路由功能,同時(shí)還要在該配置類中放入攔截器以及handler的bean
- handler處理器處理websocket各狀態(tài)下的方法
- 攔截器一般用于注冊(cè)用戶信息,綁定websocketsession