


Analisis ringkas tentang cara menggunakan modul Socket.IO secara elegan dalam nod
Bagaimana untuk menggunakan modul Socket.IO dalam
nod? Artikel berikut akan memperkenalkan kepada anda cara menggunakan modul Socket.IO secara elegan dalam node.js. Saya harap ia akan membantu anda!
Takrifan Socket.IO
Socket.IO ialah WebSocket库
, termasuk 客户端的js
dan 服务器端的node.js
, matlamatnya adalah untuk membina aplikasi masa nyata yang boleh digunakan pada penyemak imbas dan peranti mudah alih yang berbeza. [Tutorial berkaitan yang disyorkan: tutorial video nodejs]
Socket.IO merangkum semua WebSocket、AJAX和其它的通信方式
ke dalam 统一的通信接口
, iaitu, apabila kami menggunakan SocketIO, 不用担心兼容问题,底层会自动选用最佳的通信方式
.
Kelebihan Socket.IO
Socket.io merangkum pelayan dan klien, menggunakan It is sangat mudah dan senang digunakan.
socket.io menyokong platform merentas, yang bermaksud anda mempunyai lebih banyak pilihan untuk membangunkan aplikasi masa nyata pada platform kegemaran anda.
socket.io boleh menyesuaikan acara untuk dihantar kepada rakan sebaya, yang boleh menjadi pelayan atau pelanggan;
使用emit发送,接收还是on
- Ia secara automatik akan memilih cara terbaik untuk melaksanakan aplikasi rangkaian masa nyata berdasarkan penyemak imbas daripada WebSocket, tinjauan panjang AJAX, penstriman Iframe, dll., yang sangat mudah dan pengguna- mesra, dan pelayar minimum yang disokong ialah IE5.5. Jika websocket tidak disokong, ia boleh diturunkan secara automatik kepada
轮询
Pasang Socket.IO dalam nod
Buka terminal , masukkan kod berikut dalam terminal untuk memasang modul Socket.IO:npm i socket.io
Gunakan Socket.IO dalam nod
dan emit
ialah dua API paling penting, masing-masing sepadan dengan acara on
dan 发送
监听
dan 服务端
, dan kemudian dalam 发送一个事件emit
Dengar客户端
, dan sebaliknya. on
yang dihantar juga sangat percuma, 内容格式
. Menggunakan fungsi panggil balik membolehkan lebih banyak interaksi mudah alih. 既可以是基本数据类型 Number,String,Boolean 等,也可以是 Object,Array 类型,甚至还可以是函数
: socket.emit(eventName[, ...args])
发射(触发)一个事件
socket.emit('aaa','你好,前台')
Di sini kita ambilsebagai contoh: buat acara (
服务端
)socket.emit()
melalui kaedah第一个参数:自定义事件
dalam pelayan, dan hantar maklumat (aaa
)第二个参数
.你好,前台
Nota: boleh melepasi sebagai parameter kedua, kerana
对象
mempunyai kaedahemit方法内部
yang menukar objek secara automatik kepada rentetan.JSON.stringfy()
: socket.on(eventName, callback)
监听一个 emit 发射的事件
socket.on('aaa',(msg)=>{ console.log(msg) })
Mengambilsebagai contoh di sini, pelanggan mendengar acara
客户端
di sebelah pelayan, dan kemudian mencetak maklumat yang dihantar olehaaa
melalui fungsi panggil balik.aaa
Diperkenalkan dan digunakan dalam ekspres
Pelayan
const server = require('http').createServer(app); const io = require('socket.io')(server); io.on('connection', socket => { console.log('恭喜你连接成功!') socket.on("message",(msg)=>{ console.log(msg) //你好 后台 //注意 : 这里的 io.emit() 是默认转发给全部客户端信息,所有客户端都可以收到 io.emit("allMsg","广播 : 欢迎来到聊天室") }) }); server.listen(3000);
melepasisebagai parameter untuk menunjukkan bahawa perkhidmatan yang dipasang oleh
server
masih berdasarkanio
.http
Kod di sini bermakna selagi sambungan berjaya, mesej kejayaan sambungan akan dicetak!
Pelanggan
<script src="/socket.io/socket.io.js"></script> <script> const socket = io(); //默认连接服务端启动的本地端口地址 socket.emit("message","你好 后台") // 监听服务端的广播事件,接收广播的消息 socket.on("allMsg",(msg)=>{ console.log(msg) //广播 : 欢迎来到聊天室 }) </script>
Anda perlu merujuk failsecara berasingan pada klien sebelah kerana socket.io bukan modul terbina dalam penyemak imbas dan perlu dirujuk secara berasingan Kod dalaman fail js ==>
socket.io.js
kod dalaman socket.io.js Salin kod di sini ke fail js yang anda buat, dan kemudian dirujuk dalam klien. Selagi
muncul dalam klien, penyemak imbas akan menyambung terus ke alamat perkhidmatan setempat yang dimulakan oleh klien secara lalai.const socket = io()
Ringkasan
Secara relatifnya, modul pihak ketiga socket.io lebih mudah dan cekap semasa menulis kod Modul ws
, cawangan switch
digunakan untuk membentangkan 聊天类型
yang berbeza dalam cara yang berbeza Dalam modul socket.io
, masalah ini boleh diselesaikan dengan hanya menggunakan 自定义事件
, dan socket.io boleh digunakan apabila. pelayan terputus sambungan Selepas membukanya, anda boleh menyambung secara automatik apabila anda memasuki klien sekali lagi, dan prestasi keseluruhan adalah lebih baik daripada modul ws
.
Untuk lebih banyak pengetahuan berkaitan nod, sila lawati: tutorial nodejs!
Atas ialah kandungan terperinci Analisis ringkas tentang cara menggunakan modul Socket.IO secara elegan dalam nod. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

Video Face Swap
Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

Bagaimana untuk mengendalikan muat naik fail? Artikel berikut akan memperkenalkan kepada anda cara menggunakan ekspres untuk mengendalikan muat naik fail dalam projek nod saya harap ia akan membantu anda!

Cara memadam nod dengan nvm: 1. Muat turun "nvm-setup.zip" dan pasangkannya pada pemacu C 2. Konfigurasikan pembolehubah persekitaran dan semak nombor versi melalui arahan "nvm -v" 3. Gunakan "nvm arahan install" Pasang nod; 4. Padamkan nod yang dipasang melalui arahan "nvm uninstall".

Artikel ini akan berkongsi dengan anda alat pengurusan proses Node "pm2", dan bercakap tentang mengapa pm2 diperlukan, cara memasang dan menggunakan pm2, saya harap ia akan membantu semua orang!

Penjelasan dan Panduan Pemasangan Terperinci untuk Pinetwork Nodes Artikel ini akan memperkenalkan ekosistem pinetwork secara terperinci - nod pi, peranan utama dalam ekosistem pinetwork, dan menyediakan langkah -langkah lengkap untuk pemasangan dan konfigurasi. Selepas pelancaran Rangkaian Ujian Blockchain Pinetwork, nod PI telah menjadi bahagian penting dari banyak perintis yang aktif mengambil bahagian dalam ujian, bersiap sedia untuk pelepasan rangkaian utama yang akan datang. Jika anda tidak tahu kerja pinet, sila rujuk apa itu picoin? Berapakah harga untuk penyenaraian? Penggunaan PI, perlombongan dan analisis keselamatan. Apa itu Pinetwork? Projek Pinetwork bermula pada tahun 2019 dan memiliki syiling pi cryptocurrency eksklusifnya. Projek ini bertujuan untuk mewujudkan satu yang semua orang boleh mengambil bahagian

Bagaimana untuk membungkus fail boleh laku nodejs dengan pkg? Artikel berikut akan memperkenalkan kepada anda cara menggunakan pkg untuk membungkus projek Node ke dalam fail boleh laku. Saya harap ia akan membantu anda!

npm node gyp gagal kerana versi "node-gyp.js" dan "Node.js" tidak sepadan Penyelesaiannya: 1. Kosongkan cache nod melalui "npm cache clean -f" 2. Melalui "npm install -. g n" Pasang modul n; 3. Pasang versi "nod v12.21.0" melalui arahan "n v12.21.0".

Pengesahan adalah salah satu bahagian terpenting dalam mana-mana aplikasi web. Tutorial ini membincangkan sistem pengesahan berasaskan token dan cara ia berbeza daripada sistem log masuk tradisional. Pada penghujung tutorial ini, anda akan melihat demo berfungsi sepenuhnya yang ditulis dalam Angular dan Node.js. Sistem Pengesahan Tradisional Sebelum beralih kepada sistem pengesahan berasaskan token, mari kita lihat sistem pengesahan tradisional. Pengguna memberikan nama pengguna dan kata laluan mereka dalam borang log masuk dan klik Log Masuk. Selepas membuat permintaan, sahkan pengguna di bahagian belakang dengan menanyakan pangkalan data. Jika permintaan itu sah, sesi dibuat menggunakan maklumat pengguna yang diperoleh daripada pangkalan data dan maklumat sesi dikembalikan dalam pengepala respons supaya ID sesi disimpan dalam penyemak imbas. Menyediakan akses kepada aplikasi tertakluk kepada

Bagaimana untuk melaksanakan OCR (pengiktirafan aksara optik)? Artikel berikut akan memperkenalkan kepada anda cara menggunakan nod untuk melaksanakan OCR. Saya harap ia akan membantu anda!
