Express.io的广播方法

时间:2013-03-15 23:36:45

标签: node.js express socket.io

我遇到Express.io问题:我尝试创建聊天但我无法使用Broadcast方法。

没有错误信息,但没有任何反应。

app.js

var express = require('express.io')
    , index = require('./routes/index.js')
    , http = require('http')
    , path = require('path');

var app = express();

app.configure(function(){
  //configure options
});

app.http().io();

app.get('/', index.index);

app.io.route('ready', function(req) {
    req.io.broadcast('newUser');
});

app.listen(app.get('port'), function(){
    console.log("Express server listening on port " + app.get('port'));
});

user.js的

io = io.connect();

io.emit('ready');

io.on('newUser', function(data) {
    console.log("New user !!");
});

错误2

WebSocket connection to 'ws://tchat.aws.af.cm/socket.io/1/websocket/n8Jm9Q7YYL8YdPRN4dxU' failed: Unexpected response code: 502 

1 个答案:

答案 0 :(得分:1)

除了与请求关联的客户端之外,

req.io.broadcast广播到所有连接的客户端。您应该使用app.io.broadcast向所有已连接的客户端广播。

请参阅给出的示例:https://github.com/techpines/express.io/tree/master/examples/broadcasting