我正在开发一个mutliplayer游戏,并决定使用NodeJS作为系统的一部分。 nodeJS通过TCP链接到m c#游戏模拟器。
但是,如何将消息发送到某个用户ID? 数据库中的每个用户都有一个唯一的用户ID(E.G 1)
如果游戏中的用户执行某项操作并发送消息,我该怎么做呢? 从节点到他们。
因为我无法在与我的cms(端口80)相同的端口上运行节点。 我需要一种方法,我可以使用PHP来提取ID或其他东西。
用作Jquery和'GET'?我太烂了。
通过消息我的意思是发送javascript窗口等数据。
可用选项: JQuery的 使用Javascript PHP 节点
我想到了一种方法,用户ID通过PHP中的参数(E.G $ ID)在div中呈现,然后针对div和消息进行javascript检查以查看id是否匹配。然后在消息中将包含用户ID,然后以某种方式我可以拆分消息?所以它的“”,“”(ID,MESSAGE)
代码:
var socket = io.connect('http://dev.com'); socket.on('field',function(data){
if ($("#userid").text().indexOf(data) > -1)
{
window.alert('lol');
console.log(data);
$("#field").html(data);
}
else
{
window.alert("Something has gone wrong with the node server...");
}
});
它不起作用。
网页: C#: 节点:
答案 0 :(得分:1)
根据您在评论中的回复:
消息内部只是节点通过节点HTTP服务器发送到页面的html。这些消息并不是很重要,例如" window.open(" google.com");.只有当用户点击游戏中的某个内容并且没有。
时,才会触发消息
听起来像你真正想要的是某种RPC。有一个坚实的NPM module called Socket.IO可以很好地为你完成这一切。触发一个事件,它可以在服务器端处理,任何回调数据都会被发送回客户端。