NodejsとSocketioは初めてです。次のようなことをしたいです。
->Webブラウザで指定されたチャネルをリッスンするsocket.io/node.jsサーバーを作成します。->サーバーサイドスクリプトは、メッセージを特定のチャネルにプッシュします。
(私はすでにサーバーを作成していて、ここにコードがあります。これは、接続されているすべてのクライアントに2つのメッセージアクションとメッセージを送信するだけです)
//start code
var app = require('http').createServer(handler)
, io = require('socket.io').listen(app)
, url = require('url')
app.listen(8080);
function handler (req, res) {
// parse URL
var requestURL = url.parse(req.url, true);
// if there is a message, send it
if(requestURL.query.message)
sendMessage(decodeURI(requestURL.query.action), decodeURI(requestURL.query.message));
// end the response
res.writeHead(200, {'Content-Type': 'text/plain'});
res.end("");
}
function sendMessage(action, message) {
io.sockets.emit('notification', {'action': action, 'message' : message});
}
したがって、基本的にSocket.ioサーバーにはチャネルが定義されていません。ただし、これらはクライアント(ブラウザーではjs)によって定義され、メッセージはサーバー側スクリプト(cURLを使用するphpなど)によって特定のチャネルに送信されます。
この質問が以前に行われたことがある場合は申し訳ありませんが、検索を行いましたが、役立つものは見つかりませんでした。