我在nodejs + socket.io中有一个简单的tcp连接服务器可以将数据发送到服务器,但我没有回来。
原谅我的英语我来自巴西
查看代码。
客户代码:
if(newY !== ymouse || newX !== xmouse)
{
socket.emit('chat', {playerX: playerX, playerY: playerY});
}
socket.on('chat',
function (data)
{
console.log(data)
// $("p#data_recieved").append("<br />\r\n [position] {" + data.msgr + ": playerX = " + data.playerX + ", playerY = " + data.playerY + "}");
document.getElementById("vy").innerHTML = data.X;
document.getElementById("vx").innerHTML = data.y;
}
服务器代码:
var io = require('socket.io').listen(8000);
io.sockets.on('connection',
function (socket)
{
socket.on('chat',
function (data)
{
var sender = 'unregistered';
socket.get('nickname',
function (err, name)
{
console.log('Chat message by ', name);
console.log('error ', err);
console.log('X: ' + data.playerX);
console.log('Y: ' + data.playerY);
sender = name;
});
socket.broadcast.emit('chat', { playerX : data.playerX, playerY : data.playerY, msg : data, msgr : sender});
});
socket.on('position',
function (data)
{
var sender = 'unregistered';
socket.get('nickname',
function (err, name)
{
sender = name;
});
if(sender == 'unregistered')
return;
var playerX = data.playerX;
var playerY = data.playerY;
socket.broadcast.emit('position', {msgr : sender, playerX : playerX, playerY : data.playerY});
});
socket.on('register',
function (name)
{
socket.set('nickname', name,
function ()
{
io.sockets.emit('chat', {msg : "naay nag apil2! si " + name + '!', msgr : "mr. server"});
});
});
});
你怎么能看到我能 将数据发送到服务器但是 没有反应 服务器似乎运作良好
答案 0 :(得分:0)
我留下一个简单连接的例子,你可以启发
服务器:
var simple = io
.sockets
.on('connection', function(socket) {
socket.on('message', function(data) {
socket.broadcast.send(data);
});
socket.on('disconnect', function() {
// handle disconnect
});
});
客户端:
var socket = io.connect();
var content = $('#simple-content');
socket.on('connect', function() {
$('#simple-form').css('display', 'block');
content.append($('<p>').text('Connected'));
});
socket.on('message', function(msg) {
content.append($('<p>').text(msg)
.append($('<em>').text(' from server')));
});
$('#simple-form').submit(function(e) {
e.preventDefault();
var textObj = $('#simple-text');
var msg = textObj.val();
textObj.val('');
content.append($('<p>').text(msg)
.append($('<em>').text(' from me')));
socket.send(msg);
});
我希望它会有所帮助!