• <fieldset id="8imwq"><menu id="8imwq"></menu></fieldset>
  • <bdo id="8imwq"><input id="8imwq"></input></bdo>
    最新文章專題視頻專題問答1問答10問答100問答1000問答2000關鍵字專題1關鍵字專題50關鍵字專題500關鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關鍵字專題關鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
    問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
    當前位置: 首頁 - 科技 - 知識百科 - 正文

    node.js中ws模塊創建服務端和客戶端,網頁WebSocket客戶端

    來源:懂視網 責編:小采 時間:2020-11-27 22:00:17
    文檔

    node.js中ws模塊創建服務端和客戶端,網頁WebSocket客戶端

    node.js中ws模塊創建服務端和客戶端,網頁WebSocket客戶端:首先下載websocket模塊,命令行輸入 npm install ws 1.node.js中ws模塊創建服務端 // 加載node上websocket模塊 ws; var ws = require(ws); // 啟動基于websocket的服務器,監聽我們的客戶端接入進來。 var server = new ws.
    推薦度:
    導讀node.js中ws模塊創建服務端和客戶端,網頁WebSocket客戶端:首先下載websocket模塊,命令行輸入 npm install ws 1.node.js中ws模塊創建服務端 // 加載node上websocket模塊 ws; var ws = require(ws); // 啟動基于websocket的服務器,監聽我們的客戶端接入進來。 var server = new ws.

    1.node.js中ws模塊創建服務端

    // 加載node上websocket模塊 ws;
    var ws = require("ws");
    // 啟動基于websocket的服務器,監聽我們的客戶端接入進來。
    var server = new ws.Server({
     host: "127.0.0.1",
     port: 6080,
    });
    // 監聽接入進來的客戶端事件
    function websocket_add_listener(client_sock) {
     // close事件
     client_sock.on("close", function() {
     console.log("client close");
     });
     // error事件
     client_sock.on("error", function(err) {
     console.log("client error", err);
     });
     // end 
     // message 事件, data已經是根據websocket協議解碼開來的原始數據;
     // websocket底層有數據包的封包協議,所以,絕對不會出現粘包的情況。
     // 每解一個數據包,就會觸發一個message事件;
     // 不會出現粘包的情況,send一次,就會把send的數據獨立封包。
     // 如果我們是直接基于TCP,我們要自己實現類似于websocket封包協議就可以完全達到一樣的效果;
     client_sock.on("message", function(data) {
     console.log(data);
     client_sock.send("Thank you!");
     });
     // end 
    }
    // connection 事件, 有客戶端接入進來;
    function on_server_client_comming (client_sock) {
     console.log("client comming");
     websocket_add_listener(client_sock);
    }
    server.on("connection", on_server_client_comming);
    // error事件,表示的我們監聽錯誤;
    function on_server_listen_error(err) {
    }
    server.on("error", on_server_listen_error);
    // headers事件, 回給客戶端的字符。
    function on_server_headers(data) {
     // console.log(data);
    }
    server.on("headers", on_server_headers);

    2.node.js中ws模塊創建客戶端

    var ws = require("ws");
    // url ws://127.0.0.1:6080
    // 創建了一個客戶端的socket,然后讓這個客戶端去連接服務器的socket
    var sock = new ws("ws://127.0.0.1:6080");
    sock.on("open", function () {
     console.log("connect success !!!!");
     sock.send("HelloWorld1");
     sock.send("HelloWorld2");
     sock.send("HelloWorld3");
     sock.send("HelloWorld4");
     sock.send(Buffer.alloc(10));
    });
    sock.on("error", function(err) {
     console.log("error: ", err);
    });
    sock.on("close", function() {
     console.log("close");
    });
    sock.on("message", function(data) {
     console.log(data);
    });

    3.網頁客戶端創建(使用WebApi --->WebSocket)

    <!DOCTYPE html>
    <html>
    <head>
     <title>skynet websocket example</title>
    </head>
    <body>
     <script>
     var ws = new WebSocket("ws://127.0.0.1:6080/index.html");
     ws.onopen = function(){
     alert("open");
     ws.send("WebSocket hellowrold!!");
     };
     ws.onmessage = function(ev){
     alert(ev.data);
     };
     ws.onclose = function(ev){
     alert("close");
     };
     ws.onerror = function(ev){
     console.log(ev);
     alert("error");
     };
     </script>
    </body>
    </html>

    總結

    聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

    文檔

    node.js中ws模塊創建服務端和客戶端,網頁WebSocket客戶端

    node.js中ws模塊創建服務端和客戶端,網頁WebSocket客戶端:首先下載websocket模塊,命令行輸入 npm install ws 1.node.js中ws模塊創建服務端 // 加載node上websocket模塊 ws; var ws = require(ws); // 啟動基于websocket的服務器,監聽我們的客戶端接入進來。 var server = new ws.
    推薦度:
    標簽: js nod 客戶端
    • 熱門焦點

    最新推薦

    猜你喜歡

    熱門推薦

    專題
    Top
    主站蜘蛛池模板: 亚洲成人精品久久| 亚洲午夜久久久精品影院| 精品亚洲国产成AV人片传媒| 国产精品福利电影一区二区三区四区欧美白嫩精品 | 久久精品成人免费国产片小草| 国产成人精品日本亚洲18图| 嫖妓丰满肥熟妇在线精品| 乱人伦人妻精品一区二区| 国产精品 视频一区 二区三区| 国产在线不卡午夜精品2021 | 精品亚洲一区二区三区在线观看| 亚洲精品国产成人99久久| 97久久精品国产精品青草| 狼色精品人妻在线视频| 亚洲精品中文字幕乱码三区| 欧美精品黑人粗大视频| 91精品国产福利在线导航| 在线精品亚洲一区二区小说| 亚洲国模精品一区| 欧美激情视频精品一区二区| 亚洲午夜精品一区二区| 久久久国产精品福利免费| 99国产精品国产精品九九| 亚洲精品~无码抽插| 午夜欧美精品久久久久久久| 日韩av无码久久精品免费| 久久精品人人做人人妻人人玩| 天天视频国产精品| 久久国产成人亚洲精品影院| 久久精品国产99国产精偷| 久久国产午夜精品一区二区三区| 国产麻豆精品入口在线观看 | 四虎影院国产精品| 亚洲欧美日韩国产成人精品影院| 中文字幕精品久久久久人妻| 无码人妻精品一区二区三区久久 | 桃花岛精品亚洲国产成人| 亚洲人成亚洲精品| 99精品在线免费| 国产精品自在欧美一区| 国产亚洲午夜高清国产拍精品|