socket特點:
它的最大特點就是,服務(wù)器可以主動向客戶端推送信息,客戶端也可以主動向服務(wù)器發(fā)送信息, 是真正的雙向平等對話, 屬于服務(wù)器推送技術(shù)的一種

WS
協(xié)議標(biāo)識符是ws (如果加密,則為wss),服務(wù)器網(wǎng)址就是URL

Socket.io
Socket.I0支持實時、雙向和基于事件的通信。
它適用于每一-個平臺、瀏覽器或設(shè)備,同樣注重可靠性和速度。
安裝
切換到項目目錄
npm install //安裝依賴
npm run start //啟動項目
使用準(zhǔn)備
引入js
<script src="http://mychat.applinzi.com/socket.io/socket.io.js"></script>
連接
//連接websocket后端服務(wù)器
this.socket = io.connect('ws://mychat.applinzi.com');
登錄與注銷
//監(jiān)聽新用戶登錄
this.socket.on('login', function(o){
console.log(o, 'login');
});
//監(jiān)聽用戶退出
this.socket.on('logout', function(o){
console.logo(o, 'logout');
});
發(fā)送登錄信息
//告訴服務(wù)器端有用戶登錄
this.socket.emit('login', {userid:this.userid, username:this.username});
發(fā)送信息
var obj = { userid: this.userid,username: this.username, content: content};
this.socket.emit('message', obj);
監(jiān)聽消息發(fā)送
//監(jiān)聽消息發(fā)送
this.socket.on('message' , function(obj){
console.log(obj,' message')
}}