1
サーバーがデータを「送信する」ときとクライアントがデータを取得するときを理解するのは苦労します。socket.ioのサーバーとクライアントの違い "on"と "emmit"
コードを使用すると、index.js
上で見ることができるよう
$(function(){
'use strict';
// client side
console.log("starting chat...");
var socket = io();
$('form').submit(function(){
// call event chat message
socket.emit('chat message', $('#m').val());
$('#m').val('');
return false;
});
// create chat message event on client
socket.on('chat message', function(msg){
$('#messages').append($('<li>').text(msg));
})
});
それはchat message
を作成し、それioの使用nodejs
// server side
var app = require('express')();
var http = require('http').Server(app);
var io = require('socket.io')(http);
app.get('/', function(req, res){
res.sendFile(__dirname + '/index.html');
});
io.on('connection', function(socket){
console.log('a user connected');
// create chat message
socket.on('chat message', function(msg){
io.emit('chat message', msg);
console.log('message: ' + msg);
});
socket.on('disconnect', function(){
console.log('user disconnected');
});
});
http.listen(3000, function(){
console.log('listening on *:3000');
});
ために、スクリプトでindex.js
にその例
でありますemmit
です。同じことがスクリプトにあります。だから問題は、サーバーとクライアントが互いにどのように話し合うのかということです。 emmit
とon
の違いは何ですか?
'emit'はメッセージを送ります、' on'はイベントを受け取ります、それは明白ではありませんか? – Bergi
サーバーとクライアントが一般的にどのように機能し、どのようなソケットがあるのか知っていますか? – Bergi
私は(サーバーとクライアント)、ソケットではそうではありませんが、私は彼らが両方ともイベント "新しいメッセージ"を使用しているのを見ることができるので、どう対話しているのか分かりません。 –