[英]How to emit data with socket.io client-side?
因此,我正在使用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);
});
我的目標是將數據從客戶端發送到服務器。 我將不勝感激一些幫助。
謝謝
使用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);
});
});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.