http 為無狀態(tài)連接,想要長時間連接服務(wù)器使用socket吧缘琅!下面是我使用Websoket的實(shí)際操作:
const { WebSocket } = global
connectWebsoket() {
this.ws = new WebSocket(WEBSOCKET_URL)
//WEBSOCKET_URL是寫好的地址
this.ws.onopen = () => {
//onopen
console.log('websocket已連接')
this.handleLoginNotifyServer()
}
this.ws.onmessage = (e) => {
//onmessage
const message = JSON.parse(e.data) //得到的message數(shù)據(jù)
}
this.ws.onerror = () => {
//onerror
console.log('消息服務(wù)器未連接粘都,請檢查是否開啟cookie支持,再重新登錄!')
}
this.ws.onclose = (e) => {
//onclose
console.log('webSocket已斷開, 3秒后開始重連')
setTimeout(() => {
this.connectWebsoket() //斷開后3秒重新連接
}, 3000)
}
}
socket本質(zhì)是編程接口(API)刷袍,對TCP/IP的封裝翩隧。