日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

java node websocket_nodejs怎么实现webSocket接口即时通讯服务?

發布時間:2023/12/10 编程问答 25 豆豆
生活随笔 收集整理的這篇文章主要介紹了 java node websocket_nodejs怎么实现webSocket接口即时通讯服务? 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

websocket

工作方式:廣播和收聽 # 使用場景:金融/聊天室/……

websocket:服務器支持廣泛(node/java/php/c#……) 原生API操作復雜 可以使用第三方模塊:socket.io 是在websocket的基礎上創建的模塊 優點:簡單

下載

服務器端

npm i socket.io

客戶端

使用

// 工作方式:事件綁定與事件觸發完成發送數據與接收數據

1. 服務器(發送), 客戶端(接收)

a.服務器 socket.emit("fun", data) // 服務器觸發事件fun并傳遞參數data

b.客戶端 client.on("fun", (data) => { }) //客戶端綁定事件fun,并接收參數data

2. 客戶端(發生), 服務器(接收)

a.服務器 socket.on("fun", (data) => { }) //服務器綁定事件fun,接收參數data

b.客戶端 client.emit("fun", data) //客戶端觸發事件并傳遞參數data

示例

服務器

// 創建web服務器

var server = require("http").createServer();

// 創建io對象

var io = require("http://socket.io")(server);

// 綁定監聽端口

server.listen(3000)

// 為io綁定默認事件connection: 客戶端連接到服務器自動觸發-- >

io.on("connection", (socket) => {

console.log("客戶連接到服務器")

/**socket: 是一個對象, 與客戶端通訊

觸發客戶端事件 / 綁定事件等待客戶端觸發*/

// 接收客戶端數據

socket.on("abc", (data) => { })

// 向客戶端發送數據

socket.emit("bcd", "你訂的餐到了")

// 向客戶端廣播發送數據

io.emit("www", data)

})

// 客戶端斷開連接觸發事件

io.on("disconnection", () => { })

客戶端

//(1)連接服務器

var client = io("ws://127.0.0.1:3000");

//(2)接收服務器數據

client.on("bcd", (data) => {

console.log("接收到服務器數據:" + data);

})

//(3)向服務器發送數據

client.emit("abc", "快遞到了");

//(4)接收服務器發送廣播消息

client.on("www", (data) => {

console.log("服務器廣播消息" + data);

})

總結

以上是生活随笔為你收集整理的java node websocket_nodejs怎么实现webSocket接口即时通讯服务?的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。