jquery websocket 使用

来源:互联网 发布:mac照片是什么意思啊 编辑:程序博客网 时间:2024/06/18 13:44

下载地址:
https://code.google.com/archive/p/jquery-websocket/source

修改为:

(function($){$.extend({    websocketSettings: {        open: function(){},        close: function(){},        message: function(){},        options: {},        events: {}    },    websocket: function(url, s) {        var ws = WebSocket ? new WebSocket( url ) : {            send: function(m){ return false },            close: function(){}        };        ws._settings = $.extend($.websocketSettings, s);        $(ws)            .bind('open', $.websocketSettings.open)            .bind('close', $.websocketSettings.close)            .bind('message', $.websocketSettings.message)            .bind('message', function(e){                //var m = $.evalJSON(e.originalEvent.data);                var m = eval("(" + (e.originalEvent.data) + ")");                var h = $.websocketSettings.events[m.cmd];                if (h) h.call(this, m);            });        //ws._settings = $.extend($.websocketSettings, s);        ws._send = ws.send;        ws.send = function(cmd, data) {            var m = { cmd: cmd };            m = $.extend(true, m, $.extend(true, {}, $.websocketSettings.options, m));            if (data) m['data'] = data;            //return this._send($.toJSON(m));            var str = 'CMD ' + JSON.stringify(m);            return this._send(str);        }        $(window).unload(function(){ ws.close(); ws = null });        return ws;    }});})(jQuery);

使用:

var ws;function connectSocketServer(msgBord) {    var messageBoard = $('#' + msgBord);    ws = $.websocket('ws://{0}'.format(websocketserver), {        open: function () {            messageBoard.append('* 已连接<br />');        },        close: function () {            messageBoard.append('* 连接已断开<br />');        },        events: {            log: function (e) {                var session = e.data.sessionid;                $.post('getcuruser', function (data) {                    accecpResult(data, function () {                        ws.send('log', { username: data.data.name, realname: data.data.realname });                        ws.send('listuser', { });                    })                });            },            userlist: function (e) {                console.log(e);            }        }    });}
原创粉丝点击