ناشناس
سوال 2733
تفاوت socket.send با socket.emit در socket.io
ثبت پاسخ جدید
برای ثبت پاسخ، لطفا وارد حساب کاربری خود شوید.
پاسخها
1 پاسخهر دو متد برای ارسال پیام به کلاینت استفاده میشه فقط تفاوت این دو متد اینه که شما با استفاده از emit میتونید به رویداد کاستوم شده ی خودتون پیام ارسال کنید .
برای نمونه شما میخوایید برای رویدادی به نام myEvent پیام ارسال کنید .
توجه کنید که این رویداد برای socket تعریف نشده ست و خودتون این رویداد رو ایجاد کردید .
برای ارسال پیام به این رویداد شما باید از emit به صورت زیر استفاده کنید
var app = require('express')();
var http = require('http').Server(app);
var io = require('socket.io')(http);
io.on('connection', function(socket) {
console.log('A user connected');
//Send a message when
setTimeout(function() {
//Sending an object when emmiting an event
socket.emit('myEvent', { description: 'A custom event named testerEvent!'});
}, 4000);
});
http.listen(3000, function() {
console.log('listening on localhost:3000');
});
برای نمونه شما میخوایید برای رویدادی به نام myEvent پیام ارسال کنید .
توجه کنید که این رویداد برای socket تعریف نشده ست و خودتون این رویداد رو ایجاد کردید .
برای ارسال پیام به این رویداد شما باید از emit به صورت زیر استفاده کنید
var app = require('express')();
var http = require('http').Server(app);
var io = require('socket.io')(http);
io.on('connection', function(socket) {
console.log('A user connected');
//Send a message when
setTimeout(function() {
//Sending an object when emmiting an event
socket.emit('myEvent', { description: 'A custom event named testerEvent!'});
}, 4000);
});
http.listen(3000, function() {
console.log('listening on localhost:3000');
});