ExtJS Websocket聊天应用程序



我正在为我的客户端设置一个具有聊天支持的Extjs 4.2的MVC应用程序。为此,我使用ExtJS Websocket,我遵循这个https://market.sencha.com/extensions/ext-ux-websocket教程,但我似乎可以工作广播消息到所有连接的客户端在不同的浏览器。以下是我的代码:

        this.ws = Ext.create('Ext.ux.WebSocket', {
            url : 'ws://localhost:6966',
            autoReconnect : true,
            autoReconnectInterval : 1000,
            keepUnsentMessages : true,
            listeners : {
                open : function(ws) {
                    ws.send('notify', {
                        'message' : 'Connected to server!',
                        'id' : '123456'
                    });
                },
                message : function(ws, data) {
                    var data = Ext.decode(data);
                    console.log(data)
                },
                close : function(ws) {
                    var panel = Ext.getCmp('panel' + ws.url);
                    if ((panel != null) || (panel != undefined)) {
                        panel.destroy();
                    }
                }
            }
        });
        this.ws.on('notify', function(data) {
            Ext.get('chat-history').dom.innerHTML += '> ' + data.msg + '<br/>';
        });
        Ext.ux.WebSocketManager.register(this.ws);

我用这个来发送/广播消息:

var data = {
            id : '123456',
            msg : 'sample message'
        };
        Ext.ux.WebSocketManager.broadcast('notify', data);

你可以试试这个链接。

你需要NodeJS和NPM。

然后,安装所有依赖项:

$ npm install

为每个端口打开websocket:

$ node demo/server.js 9001 9002 9003

然后使用您发布的代码连接您的客户端。

相关内容

  • 没有找到相关文章

最新更新