網上很多的websocket我都看不懂,看了個視頻才慢慢懂了點
視頻鏈接:https://www.imooc.com/learn/861
以下都是根據老師的步伐走的
先打開cmd 或者 powershell 鍵入 cd 進入服務端的地址,再鍵入 npm install nodejs-websocket
還有nodejs也要安裝 地址:https://nodejs.org/en/
安裝成功后,在nodejs-websocket下新建js
js 服務端大致代碼:
var ws = require('nodejs-websocket');
var port=3000
var server = ws.createServer(function(conn){
//受到連接觸發//
//在服務端cmd安裝npm install nodejs-websocket//
console.log('new connection');
conn.on("text",function(str){
// 收到信息觸發 接收 //
console.log("received"+str)
boardcast(str) // 廣播消息 //
conn.sendText(str) // 發送 數據 //
})
conn.on("close",function(code,reason){
// 斷開連接觸發 //
console.log("connection closed")
})
conn.on("error",function(err){
// 出錯觸發 //
console.log("header err")
console.log(err)
})
function boardcast(str){ // 廣播 //
// server.connections 保存每個連接進來的用戶 //
server.connections.forEach(function(conn){ // .forEach 是調用數組里每個元素 //
conn.sendText(str)
})
}
}).listen(port)
console.log("websocket server listen port is" + port)
接下來看看客戶端的大致代碼:
<html>
<head>
<title>first socket</title>
</head>
<body>
<h1>myfitst room</h1>
<input type="text" id="snedTxt" />
<button id="sendb">發送</button>
<div id="recv"></div>
<script type="text/javascript">
var ws = new WebSocket("ws://localhost:3000/");// 設置服務器地址 //
ws.onopen=function(){ // onopen 連接觸發 //
console.log("websocket open");
document.getElementById("recv").innerHTML="Connected";
// innerHTML 可以 獲取 也可以 插入 //
}
ws.onclose=function(){ // onclose 斷開觸發 //
console.log("websocket close");
}
ws.onmessage =function(e){ // onmessage 接收到信息觸發 //
console.log(e.data);
document.getElementById("recv").innerHTML = e.data;
}
document.getElementById("sendb").onclick=function(){ // 監測 id=“sendb”的 按鈕 觸發 onclick 就會發送數據 send //
var txt = document.getElementById("snedTxt").value;
ws.send(txt);
}
</script>
</body>
</html>
html 直接運行
js 則要cmd cd到根目錄 鍵入 node 文件名.js

這樣就算成功了
