作者:
surimodo (好吃棉花糖)
2023-01-05 22:39:49※ 引述《Firstshadow (たたかえたたかえ)》之銘言:
: 糖糖
: 窩還不會wss
: 可以教窩一下ㄇ = =
: 窩只處在會開一個聊天室
: 但不會多開聊天室的階段
: 謝謝喔謝謝
: (づ′・ω・)づ ..
WebSocket
主要用途是後端能 主動 推送訊息到前端
一般用於聊天室之類及時發送訊息
不過並不是唯一
像是 JS 設立定時器 詢問API
也是一種簡單實現實時告知使用者有訊息方法
我當初找資料也是GIT隨便查
像是這個
https://github.com/a4227139/Websocket-ChatRoom
pom.xml 是存放依賴函式庫
websocket實現主要是靠 spring-websocket 這個庫
src/com/websocket/WebSocketConfig.java
主要是用 java class 放 websocket 設定
( java class 算比較新 舊的有用xml或annotation 設定 )
重點是 registry.addHandler 這個功能
是在後端設定位置 (/chat.sc) 接收和發送訊息
WebContent/WEB-INF/web.xml
主要是放 web 設定檔
RequestingMapping 主要路由功能都在這設定
WebContent/view/chatRoom.jsp
前端主要聊天室
if ('WebSocket' in window) {
websocket = new WebSocket("ws://" + url + "/chat.sc");
} else {
websocket = new SockJS("http://" + url + "/sockjs/chat.sc");
}
優先走ws協議
如果沒有改走 http包裝的 ws 協議
onMessage function 接收從websocket接收的訊息