CNode

这段简单的代码 有什么问题么?

Ddiaodiaop发布于13 年前最后回复13 年前2 回复3625 浏览0 收藏

var host="XXX.XXX.XX.XX"; var port=12345; var dgram = require("dgram"); var server = dgram.createSocket("udp4"); server.on("message", function (msg, rinfo) { console.log("client send: " + msg + " from " + rinfo.address + ":" + rinfo.port); var dgram2 = require('dgram'); var message = new Buffer("i reviced"); var client = dgram2.createSocket("udp4"); client.send(message, 0, message.length, rinfo.port, rinfo.address, function(err, bytes) { client.close(); }); });

server.on("listening", function () { var address = server.address(); console.log("client connection" + address.address + ":" + address.port); });

server.bind(port,host);

//其中xx是服务器的IP 也就是外网的现在要求是内网连接之后 收到一信息 但是好像上面的代码不灵...

查看回复

回复 (2)

J
JacksonTian#1·13 年前

内网外网的网卡不一样的吧。绑定0.0.0.0 不要指定host

D
diaodiaop#2·13 年前

首先谢谢你的回答 大致 我修改了下代码 如下 var port=12345; var dgram = require("dgram"); var server = dgram.createSocket("udp4"); server.on("message", function (msg, rinfo) { var dgram2 = require('dgram'); var message = new Buffer("aaaaa"); var client = dgram2.createSocket("udp4"); client.send(message, 0, message.length, rinfo.port, rinfo.address, function(err, bytes) { client.close(); }); console.log("server got: " + msg + " from " + rinfo.address + ":" + rinfo.port); });

server.on("listening", function () { var address = server.address(); console.log("server listening " + address.address + ":" + address.port); }); server.bind(port);

另外的 我用C#模拟了一个客户端 如果是C#的服务端跟客户端互相发送是没问题的.

但是目前是node作为服务端 C#作为客户端 给node发是可以的 但是接收不到...

参与回复
登录后即可参与回复。登录