nodejs實現UDP組播示例方法
更新時間:2019年11月04日 09:42:56 作者:mapoor
這篇文章主要介紹了nodejs實現UDP組播示例方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
眾所周知,UDP數據傳輸方式有 單播,組播,廣播。
其中單播模式是最常用,這里就不再啰嗦了,網上隨便都能搜到。
下面的示例主要實現簡單的UDP組播方式??梢哉J瞻l(fā)UDP數據。
Server端代碼
const dgram = require('dgram'); const server = dgram.createSocket('udp4'); // const local_ip = "192.168.0.xx"; const multicast_ip = "225.0.0.100"; // 這里必須是一個組播地址(D類IP地址) server.on('close', ()=>{ console.log('close socket'); }); server.on('listening', ()=>{ console.log('listening...'); server.setBroadcast(true); server.setMulticastTTL(128); server.addMembership(multicast_ip); setInterval(()=>{ send_msg(); }, 2000); }); server.on('message', (msg, rinfo)=>{ console.log(`receive client message from ${rinfo.address}: ${rinfo.port}: ${msg}`); }); server.bind(); // 隨機綁定本機一個端口 function send_msg(){ console.log('send msg'); server.send('hi, im server...', '8062', multicast_ip); }
Client端代碼:
const dgram = require('dgram'); var client = dgram.createSocket('udp4'); // const local_ip = '192.168.0.xx'; const multicast_ip = "225.0.0.100"; // 這里必須是一個組播地址(D類IP地址) client.on('close', ()=>{ console.log('client closed'); }); client.on('error', (err) =>{ console.log('client error' + err); }); client.on('listening', ()=>{ console.log('client listening...'); client.setBroadcast(true); client.setMulticastTTL(128); client.addMembership(multicast_ip); }); client.on('message', (msg, rinfo) => { console.log(`receive server message from ${rinfo.address}: ${rinfo.port}: ${msg}`); }); client.bind('8062'); // 監(jiān)聽組播數據的端口
參考:
http://chabaoo.cn/article/173468.htm
https://stackoverflow.com/questions/14130560/nodejs-udp-multicast-how-to
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關文章
如何在NestJS中添加對Stripe的WebHook驗證詳解
這篇文章主要為大家介紹了如何在NestJS中添加對Stripe的WebHook驗證詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2023-08-08解決node-webkit 不支持html5播放mp4視頻的方法
本文給大家分享的是解決node-webkit 不支持html5播放mp4視頻的方法,其原因大概是因為node-webkit沒有購買mp4格式的專利授權,恩,我們來想個辦法來解決這個事情吧。2015-03-03