用nodejs-websocket開發一個websoket服務
理解WebSoket
websoket協議含有websoket API介面,通過它來建立全雙工通道來收發訊息,連線遠端伺服器,只需要建立一個WebSocket物件實體,並傳入一個服務端的URL。在客戶端和服務端一開始握手的期間,http協議升級到WebSocket協議就建立了連線,底層都是TCP協議。一旦建立連線,通過WebSocket介面可以反覆的傳送訊息。在你的程式碼裡面,你可以使用非同步事件監聽連線生命週期的每個階段。這裡的nodejs-websoket是對websoket API的再一次封裝
怎樣用nodejs建立一個websoket服務
先建立一個資料夾,並用npm 安裝nodejs-websocket
npm install nodejs-websocket
在檔案下建立app.js檔案.匯入nodejs-websocket包
const ws = require('nodejs-websocket')
建立websoket連結
直接呼叫node.js-websocket的api的createServer方法即可。每次只要有使用者連結,函式就會被執行,就會
給當前連結的使用者傳建一個connect物件
const server = ws.createServer(connect=>{
console.log(`使用者連結上來了`);
// 使用者傳遞過來的資料,text事件就會被觸發
connect.on('text',data=>{
console.log(`使用者傳來的資料${data}`);
// 返回使用者資訊
connect.send(data)
})
// 當連線斷開時,就會執行這個事件 註冊close事件就要註冊下面的error事件
connect.on('close',()=>{
console.log(`連結斷開了`);
})
// 註冊一個error事件,處理使用者的錯誤資訊
connect.on('error',()=>{
console.log(`使用者連結異常`);
})
})
監聽服務埠
server.listen(PORT,()=>{
console.log(`服務啟動成功,埠號${PORT}`);
})
這時你可以執行node app,並開啟瀏覽器輸入localhost:3000檢視
相關文章
- 用 Go 快速開發一個 RESTful API 服務GoRESTAPI
- 用 GIN 構建一個 WEB 服務Web
- 前端如何用node開啟一個服務前端
- 從零開始搭建一個mock服務Mock
- 用 Go + WebSocket 快速實現一個 chat 服務GoWeb
- 生活服務app開發的三個問題APP
- 什麼是websoketWeb
- 使用Go語言開發一個短連結服務:一、基本原理Go
- C#開發一個混合Windows服務和Windows窗體的程式C#Windows
- 用純RUST手擼一個開源流媒體服務(RTMP/HTTPFLV/HLS)XIURustHTTP
- 寫一個RPC服務RPC
- EMQX Cloud 影子服務:便捷資料快取服務,加速 IoT 應用開發MQCloud快取
- 用 OpenStack Designate 構建一個 DNS 即服務(DNSaaS)DNS
- 物流服務網站搭建,從定製到開發一體化服務網站
- 自開發Web應用和SAPCustomerDataCloudIdentity服務的整合WebCloudIDE
- 開發一個React + Electron應用React
- 開發第一個Flink應用
- 用 TypeScript 編寫一個 React 服務端渲染庫(1)TypeScriptReact服務端
- 用 Go 編寫一個簡單的 WebSocket 推送服務GoWeb
- 用Java寫一個分散式快取——RESP服務端Java分散式快取服務端
- Topshelf一個用於使用.NET構建Windows服務框架Windows框架
- 服務啟動一個程式
- 有了 serverless,前端也可以快速開發一個 Puppeteer 網頁截圖服務Server前端網頁
- 【Rust網路程式設計】開發一個圖片代理和統計服務Rust程式設計
- 使用Express開發小說API介面服務1.0(一)ExpressAPI
- HarmonyOS 位置服務開發指南
- 家政服務app開發功能APP
- jwt 如何實現一個服務認證了另一個服務也可以認證JWT
- 模式:每個服務一個資料庫模式資料庫
- 將一個Python指令碼做成一個Windows服務Python指令碼Windows
- 搭建一個大模型API服務大模型API
- 使用OpenSSL自建一個HTTPS服務HTTP
- 哪裡有開工程服務費發票_開票服務大廳
- 哪裡有開會議服務費發票_開票服務大廳
- 哪裡有開服務會議費發票_開票服務大廳
- .Net Core微服務——服務發現:Consul(一)微服務
- 從零開始釋出一個ArcGIS Server地圖服務Server地圖
- 4_webflux服務端開發WebUX服務端