0
我正在用nodejs中的redis和socketio嘗試pubsub。帶有socketio的nodejs中的redis pubsub:這是不是發佈者發佈消息?
我的服務器端代碼:
var io = require('socket.io').listen(server);
var pub = redis.createClient();
io.sockets.on("connection", function(socket) {
console.log('connecteed');
var sub = redis.createClient();
sub.subscribe("messages");
sub.on("message", function(channel, message) {
console.log('message',message);
socket.emit(channel,message);
});
socket.on("disconnect", function() {
sub.unsubscribe("messages");
sub.quit();
});
});
pub.publish("messages", JSON.stringify({type: "foo", content: "bar"}));
我的HTML頁面的index.html包含以下腳本:
var host = window.location.host.split(':')[0];
var socket = io.connect('http://' + host);
socket.on('messages',function(msg){
console.log(msg);
})
但index.html中的console.log從不執行。
這是基本的,但我沒有在我的代碼中找到錯誤。它在哪裏?
是的,現在它工作。看起來沒有一個事件在套接字連接時觸發,我認爲這很奇怪,可能它需要更多的事件 –