- 1、本文档共9页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
UDP数据报套接字解读
文档首页
英文版文档
本作品采用知识共享署名-非商业性使用 3.0 未本地化版本许可协议进行许可。
Node.js v4.2.4 手册 文档
索引?|?在单一页面中浏览?|?JSON格式
目录
UDP / 数据报套接字
dgram.createSocket(type, [callback])
类: dgram.Socket
事件: message
事件: listening
事件: close
事件: error
socket.send(buf, offset, length, port, address, [callback])
socket.bind(port, [address], [callback])
socket.close()
socket.address()
socket.setBroadcast(flag)
socket.setTTL(ttl)
socket.setMulticastTTL(ttl)
socket.setMulticastLoopback(flag)
socket.addMembership(multicastAddress, [multicastInterface])
socket.dropMembership(multicastAddress, [multicastInterface])
socket.unref()
socket.ref()
UDP / 数据报套接字#
稳定度: 3 - 稳定
数据报套接字通过?require(dgram)?提供。
重要提醒:dgram.Socket#bind()?的行为在 v0.10 中已改变,并且现在它总是异步的。如果您的代码看起来像这样:
var s = dgram.createSocket(udp4);
s.bind(1234);
s.addMembership(14);
您需要将它改成这样:
var s = dgram.createSocket(udp4);
s.bind(1234, function() {
s.addMembership(14);});
dgram.createSocket(type, [callback])#
type?String 可以是 udp4 或 udp6
callback?Function 可选,会被作为?message?事件的监听器。
返回:Socket 对象
创建一个指定类型的数据报 Socket。有效类型包括?udp4?和?udp6。
接受一个可选的回调,会被添加为?message?事件的监听器。
如果您想接收数据报则可调用?socket.bind。socket.bind()?会绑定到“所有网络接口”地址的一个随机端口(udp4?和?udp6?皆是如此)。然后您可以通过?socket.address().address?和?socket.address().port?来取得地址和端口。
类: dgram.Socket#
dgram Socket 类封装了数据报功能,可以通过?dgram.createSocket(type, [callback])?创建。
事件: message#
msg?Buffer 对象,消息
rinfo?Object,远程地址信息
当套接字中有新的数据报时发生。msg?是一个?Buffer,rinfo?是一个包含了发送者地址信息的对象:
socket.on(message, function(msg, rinfo) {
console.log(收到 %d 字节,来自 %s:%d\n,
msg.length, rinfo.address, rinfo.port);});
事件: listening#
当一个套接字开始监听数据报时产生。它会在 UDP 套接字被创建时发生。
事件: close#
当一个套接字被?close()?关闭时产生。之后这个套接字上不会再有?message?事件发生。
事件: error#
exception?Error 对象
当发生错误时产生。
socket.send(buf, offset, length, port, address, [callback])#
buf?Buffer 对象,要发送的消息
offset?Integer,Buffer 中消息起始偏移值。
length?Integer,消息的字节数。
port?Integer,目标端口
address?String,目标 IP
callback?Function,可选,当消息被投递后的回调。
对于 UDP 套接字,必须指定目标端口和 IP 地址。address?参数可以是一个字符串,它会被 DNS 解析。可选地可以指定一个回调以用于发现任何 DNS 错误或当?
文档评论(0)