亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

socket.on inside socket.on 服務器端 api nodejs 中的

socket.on inside socket.on 服務器端 api nodejs 中的

泛舟湖上清波郎朗 2023-04-27 17:25:13
為什么我們需要放在socket.on這里socket.on?這代表什么?還有其他寫法嗎?這是nodejs中server.js的代碼。var objExpress = require('express')()var objHttp = require('http').createServer(objExpress)var objSocketIO = require('socket.io')(objHttp)objExpress.get('/', (request, result) => result.send('hello'))objSocketIO.on('connection', (argSocket) => {  console.log('A user connected!');  argSocket.on('message', (argMsg) => {    console.log(argMsg);    argSocket.broadcast.emit('message-broadcast-xyz', argMsg)  })})objHttp.listen(3000, () => {  console.log("Listening on port 3000")})
查看完整描述

1 回答

?
BIG陽

TA貢獻1859條經驗 獲得超6個贊

在這里面:


objSocketIO.on('connection', argSocket => {

    // here's where you know the socket for a newly connected socket

});

是您收到新連接套接字通知的唯一地方。如果您想監聽新連接的套接字上的事件,那么這里就是安裝這些事件監聽器的地方。


objSocketIO.on('connection', argSocket => {

    // here's where you know the socket for a newly connected socket

    // and where you can install event listeners on that newly connected socket

    argSocket.on('message', (argMsg) => {

        // here's where you get a message on that connected socket

        // from the previously installed event handler

        argSocket.broadcast.emit('message-broadcast-xyz', argMsg)

    });

});

這里為什么要將socket.on放在socket.on里面呢?


好吧,這就是事件驅動編程的工作原理。您可以通過安裝 eventListener 來監聽事件。在這種情況下,當您從服務器獲得一個新套接字已連接的事件時,您可以在該新套接字上安裝事件偵聽器,以便您可以從中獲取事件。


還有其他寫法嗎?


可以想出其他方法,但他們必須在幕后做這樣的事情,因為監聽事件是您在 node.js 中使用服務器和套接字進行編程的方式。


查看完整回答
反對 回復 2023-04-27
  • 1 回答
  • 0 關注
  • 130 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號