所以我使用socket.io在服务器和客户端之间实时传输数据。
我能够在服务器和客户端之间建立连接,服务器能够正确地发出套接字客户端ID。
但是我无法从客户端向服务器发送数据。我的目标是让客户端向服务器发送数据以进一步处理,但我认为我做错了什么,我无法弄清楚是什么。
Server.js在这里......
var ioJSON = require('./io');
var serverPort = ioJSON.server.port;
var date = new Date();
var io = require('socket.io').listen(serverPort);
io.on('connection', function(socket){
console.log('Client connected at '+date+' with socket ID: '+ socket.client.id);
io.emit('socketClientID', socket.client.id);
});
和client.js在这里......
var io = require('socket.io-client');
var socket = io.connect("http://localhost:3000/", {
reconnection: true
});
socket.on('socketClientID', function (socketClientID) {
console.log('Connection to server established. SocketID is',socketClientID);
});
我的目标是将数据从客户端发送到服务器。我将非常感谢一些帮助。
由于
答案 0 :(得分:1)
使用socket.emit(eventName, args)
在客户端中发送数据:
client.js:
var io = require('socket.io-client');
var socket = io.connect("http://localhost:3000/", {
reconnection: true
});
socket.on('socketClientID', function (socketClientID) {
console.log('Connection to server established. SocketID is',socketClientID);
socket.emit('hello_from_client', 123);
});
在服务器中用socket.on(eventName, callback)
server.js:
var ioJSON = require('./io');
var serverPort = ioJSON.server.port;
var date = new Date();
var io = require('socket.io').listen(serverPort);
io.on('connection', function(socket){
console.log('Client connected at '+date+' with socket ID: '+ socket.client.id);
io.emit('socketClientID', socket.client.id);
socket.on('hello_from_client', function(data){
console.log(data);
});
});