最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

NodeJS多種創(chuàng)建WebSocket監(jiān)聽(tīng)的方式(三種)

 更新時(shí)間:2020年06月04日 10:09:46   作者:MrLizs  
這篇文章主要介紹了NodeJS多種創(chuàng)建WebSocket監(jiān)聽(tīng)的方式,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下

WebSocket是HTML5開(kāi)始提供的一種瀏覽器與服務(wù)器間進(jìn)行全雙工通訊的網(wǎng)絡(luò)技術(shù)。在WebSocket API中,瀏覽器和服務(wù)器只需要要做一個(gè)握手(handshaking)的動(dòng)作,然后,瀏覽器和服務(wù)器之間就形成了一條快速通道。兩者之間就直接可以數(shù)據(jù)互相傳送。

WebSocket是一個(gè)通信的協(xié)議,分為服務(wù)器和客戶端。服務(wù)器放在后臺(tái),保持與客戶端的長(zhǎng)連接,完成雙方通信的任務(wù)??蛻舳艘话愣际菍?shí)現(xiàn)在支持HTML5瀏覽器核心中,通過(guò)提供JavascriptAPI使用網(wǎng)頁(yè)可以建立websocket連接。Java實(shí)現(xiàn)的案例,請(qǐng)參考:Java現(xiàn)實(shí)WebSocket

為什么用Nodejs?

1. 事件驅(qū)動(dòng),通過(guò)閉包很容易實(shí)現(xiàn)客戶端的生命活期。
2. 不用擔(dān)心多線程,鎖,并行計(jì)算的問(wèn)題
3. V8引擎速度非???br /> 4. 對(duì)于游戲來(lái)說(shuō),寫(xiě)一遍游戲邏輯代碼,前端后端通用。

當(dāng)然Nodejs也有一些缺點(diǎn):

1. nodejs更新很快,可能會(huì)出現(xiàn)版本聯(lián)兼容
2. nodejs還不算成熟,還沒(méi)有大制作。
3. nodejs不像其他的服務(wù)器,對(duì)于不同的連接,不支持進(jìn)程和線程操作。

在權(quán)衡Nodejs給我們帶來(lái)無(wú)限暢快的開(kāi)發(fā)的同時(shí),要考慮到他的不成熟,特別是對(duì)于“長(zhǎng)連接”的網(wǎng)絡(luò)通信應(yīng)用。下面我將分別,測(cè)試一下網(wǎng)上幾種Nodejs實(shí)現(xiàn)websocket的框架。

下面通過(guò)三種方式給大家介紹nodejs創(chuàng)建WebSocket監(jiān)聽(tīng)的方式,具體內(nèi)容如下所示:

第一種,nodejs原生自帶的

//引用net庫(kù)的方式

const net = require('net');
 
const server = net.createServer((socket)=>{
 socket.on("connect",(data)=>{
 console.log("connect");
 })
});
 
server.listen("8111","127.0.0.1")

第二種:

//js的原生方式

const WebSocketServer = require("ws").Server;
var ws = new WebSocketServer({ host: webConfig.ip, port: webConfig.port })
 
io.on('connection', function (socket) {
 socket.on("close", function () {
 console.log("server close");
 });
 
 socket.on("error", function (err) {
 console.log("server error " + err);
 });
 
 socket.on("message", function (cmd, data) {
 console.log("server rcv data=" + cmd);
 socket.send(data);
 });
});

第三種:

//使用外部socket.io庫(kù)的方式

const io = require('socket.io')(webConfig.port);
io.sockets.on('connection', function (socket) {
 socket.on('getSysConf', function (data) {
 console.log("get sys config ");
 });
});

總結(jié)

到此這篇關(guān)于NodeJS多種創(chuàng)建WebSocket監(jiān)聽(tīng)的方式的文章就介紹到這了,更多相關(guān)nodejs創(chuàng)建WebSocket監(jiān)聽(tīng)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • node+express框架中連接使用mysql(經(jīng)驗(yàn)總結(jié))

    node+express框架中連接使用mysql(經(jīng)驗(yàn)總結(jié))

    這篇文章主要介紹了node+express框架中連接使用mysql(經(jīng)驗(yàn)總結(jié)),小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2018-11-11
  • Node.JS中的模塊、exports和module講解

    Node.JS中的模塊、exports和module講解

    這篇文章主要介紹了Node.JS中的模塊、exports和module講解,模塊分為兩類(lèi)一類(lèi)是核心模塊一類(lèi)是文件模塊,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),需要的朋友可以參考下
    2023-01-01
  • 詳解Node.js中exports和module.exports的區(qū)別

    詳解Node.js中exports和module.exports的區(qū)別

    這篇文章主要介紹了詳解Node.js中exports和module.exports的區(qū)別,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2017-04-04
  • 基于node簡(jiǎn)單實(shí)現(xiàn)RSA加解密的方法步驟

    基于node簡(jiǎn)單實(shí)現(xiàn)RSA加解密的方法步驟

    這篇文章主要介紹了基于node簡(jiǎn)單實(shí)現(xiàn)RSA加解密的方法步驟,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2019-03-03
  • Node.js 中 cors 依賴示例詳解

    Node.js 中 cors 依賴示例詳解

    cors是一個(gè)用于處理跨域資源共享(CORS)問(wèn)題的Node.js中間件,可以幫助開(kāi)發(fā)人員解決前后端分離項(xiàng)目中的跨域問(wèn)題,該中間件提供了多種配置選項(xiàng),以滿足不同的跨域需求,如指定允許跨域請(qǐng)求的源、請(qǐng)求方法、請(qǐng)求頭等,本文介紹Node.js  cors 依賴相關(guān)知識(shí),感興趣的朋友一起看看吧
    2025-02-02
  • nodejs實(shí)現(xiàn)聊天機(jī)器人功能

    nodejs實(shí)現(xiàn)聊天機(jī)器人功能

    這篇文章主要介紹了nodejs實(shí)現(xiàn)聊天機(jī)器人功能,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2019-09-09
  • jwt在express中token的加密解密實(shí)現(xiàn)過(guò)程

    jwt在express中token的加密解密實(shí)現(xiàn)過(guò)程

    文章詳細(xì)介紹了JWT在Node.js中的生成和驗(yàn)證過(guò)程,包括設(shè)置密鑰、使用中間件進(jìn)行token驗(yàn)證等步驟,并提供了一個(gè)完整的示例代碼,感興趣的朋友跟隨小編一起看看吧
    2025-01-01
  • npm的lock機(jī)制解析

    npm的lock機(jī)制解析

    這篇文章主要介紹了npm的lock機(jī)制解析,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2019-06-06
  • win10環(huán)境使用nvm安裝多版本nodejs并配置環(huán)境變量的完整步驟

    win10環(huán)境使用nvm安裝多版本nodejs并配置環(huán)境變量的完整步驟

    這篇文章主要給大家介紹了關(guān)于win10環(huán)境使用nvm安裝多版本nodejs并配置環(huán)境變量的相關(guān)資料,需要的朋友可以參考下
    2024-01-01
  • 新版Node.js內(nèi)置支持.env文件使用詳解

    新版Node.js內(nèi)置支持.env文件使用詳解

    這篇文章主要為大家介紹了新版Node.js內(nèi)置支持.env文件使用詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-09-09

最新評(píng)論

大港区| 温泉县| 荥经县| 芜湖县| 崇信县| 习水县| 吐鲁番市| 丰原市| 澜沧| 罗平县| 赣榆县| 大英县| 武邑县| 澎湖县| 蒲城县| 湖北省| 青岛市| 大港区| 女性| 奉化市| 盐亭县| 晋宁县| 循化| 紫金县| 汝城县| 黄梅县| 盘锦市| 罗城| 宣化县| 都兰县| 汨罗市| 江陵县| 伊春市| 通渭县| 邹城市| 五大连池市| 大厂| 内黄县| 屯门区| 连州市| 大兴区|