资源描述:
《UDP 数据报套接字》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、·文档首页·英文版文档本作品采用知识共享署名-非商业性使用3.0未本地化版本许可协议进行许可。Node.jsv4.2.4手册&文档索引
2、 在单一页面中浏览
3、 JSON格式目录·UDP/数据报套接字odgram.createSocket(type,[callback])o类:dgram.Socket§事件:'message'§事件:'listening'§事件:'close'§事件:'error'§socket.send(buf,offset,length,port,address,[call
4、back])§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])§socke
5、t.dropMembership(multicastAddress,[multicastInterface])§socket.unref()§socket.ref()UDP/数据报套接字#稳定度:3-稳定数据报套接字通过 require('dgram') 提供。重要提醒:dgram.Socket#bind() 的行为在v0.10中已改变,并且现在它总是异步的。如果您的代码看起来像这样:vars=dgram.createSocket('udp4');s.bind(1234);s.addMember
6、ship('224.0.0.114');您需要将它改成这样:vars=dgram.createSocket('udp4');s.bind(1234,function(){s.addMembership('224.0.0.114');});dgram.createSocket(type,[callback])#·type String可以是'udp4'或'udp6'·callback Function可选,会被作为 message 事件的监听器。·返回:Socket对象创建一个指定类型的数据报So
7、cket。有效类型包括 udp4 和 udp6。接受一个可选的回调,会被添加为 message 事件的监听器。如果您想接收数据报则可调用 socket.bind。socket.bind() 会绑定到“所有网络接口”地址的一个随机端口(udp4 和 udp6 皆是如此)。然后您可以通过 socket.address().address 和 socket.address().port 来取得地址和端口。类:dgram.Socket#dgramSocket类封装了数据报功能,可以通过 dgram.cr
8、eateSocket(type,[callback]) 创建。事件:'message'#·msg Buffer对象,消息·rinfo Object,远程地址信息当套接字中有新的数据报时发生。msg 是一个 Buffer,rinfo 是一个包含了发送者地址信息的对象:socket.on('message',function(msg,rinfo){console.log('收到%d字节,来自%s:%d',msg.length,rinfo.address,rinfo.port);});事件:'li
9、stening'#当一个套接字开始监听数据报时产生。它会在UDP套接字被创建时发生。事件:'close'#当一个套接字被 close() 关闭时产生。之后这个套接字上不会再有 message 事件发生。事件:'error'#·exception Error对象当发生错误时产生。socket.send(buf,offset,length,port,address,[callback])#·buf Buffer对象,要发送的消息·offset Integer,Buffer中消息起始偏移值。·leng
10、th Integer,消息的字节数。·port Integer,目标端口·address String,目标IP·callback Function,可选,当消息被投递后的回调。对于UDP套接字,必须指定目标端口和IP地址。address 参数可以是一个字符串,它会被DNS解析。可选地可以指定一个回调以用于发现任何DNS错误或当 buf 可被重用。请注意DNS查询会将发送的时间推迟到至少下一个事件循环。确认发送完毕的唯一已知方法是使用回调。如果套接字之前并未被调用 bind 绑定,则它会被分配一