我正在尝试使用node.js编写一个应用程序,向具有udp服务器的设备发送udp请求,然后接收响应并显示它。该设备在其11220端口上接收请求后立即返回响应。
以下代码向设备发送udp请求,设备立即响应(我可以在wireshark中看到),但我无法处理/显示接收到的消息。或者至少我只想在接收到来自设备的回复时能够显示一条消息。请告诉我我的代码缺少什么,或者向我展示一个完整的代码来完成此操作。非常感谢。
另外,我不想使用socket.io等工具。
以下代码向设备发送udp请求,设备立即响应(我可以在wireshark中看到),但我无法处理/显示接收到的消息。或者至少我只想在接收到来自设备的回复时能够显示一条消息。请告诉我我的代码缺少什么,或者向我展示一个完整的代码来完成此操作。非常感谢。
另外,我不想使用socket.io等工具。
var PORT = 11220 ;
var HOST = '192.168.1.111';
var dgram = require('dgram');
var message = new Buffer(9);
var client = dgram.createSocket('udp4');
client.send(message, 0, message.length, PORT, HOST, function(err, bytes) {
if (err) throw err;
console.log('UDP message sent to ' + HOST +':'+ PORT);
client.close();
});
client.on('listening', function () {
var address = server.address();
console.log('UDP Server listening on ' + address.address + ":" + address.port);
});
client.on('message', function (message, remote) {
// CAN I HANDLE THE RECIVED REPLY HERE????
console.log(remote.address + ':' + remote.port +' - ' + message);
});
message
处理程序从未运行?listening
运行了吗?如果在添加事件处理程序之后才send
,会发生什么? - loganfsmyth