HTML5 Socket通信

HTML5 Socket通信使用起来也是相当不从的,先将部分JS代码与大家分享:

var socket;
        function connect() {
            var host = "ws://" + $("serverIP").value + ":" + $("serverPort").value + "/"
            socket = new WebSocket(host);
            try {

                socket.onopen = function (msg) {
                    $("btnConnect").disabled = true;
                    alert("连接成功!");
                };

                socket.onmessage = function (msg) {
                    if (typeof msg.data == "string") {
                        displayContent(msg.data);
                    }
                    else {
                        alert("非文本消息");
                    }
                };

                socket.onclose = function (msg) { alert("socket closed!") };
            }
            catch (ex) {
                log(ex);
            }
        }

        function send() {
            var msg = $("sendText").value + ''
            socket.send(msg);
        }

        window.onbeforeunload = function () {
            try {
                socket.close();
                socket = null;
            }
            catch (ex) {
            }
        };

通晓HTML5能用Socket通信,那么写一个网页端的及时通信软件也就不是什么难事了,比如QQ网页版,写这样的及时通信系统避免不了使用Socket服务端进行消息转发。Socket通信这方面的知识,微软有自带的system.NET.Socket库文件,但是现在一些比较流行的Socket通信框架也不少,如果你觉得自己调用微软Socket库太麻烦,那么我们可以选择使用striveEngine这个sokcet框架,这个相对比较轻量级别,封装底层通信代码,当然你也可以选择ESFrameWork框架,这个框架相对比较重量级,之所以说重量级,主要是接口和功能比较多,适合写大型通信项目使用。简单介绍就到这里,下面是从网上下载的一个简单Demo,描述HMTL5使用Socket通信与服务端(使用striveEngine)交互的代码实现。

 代码下载

原文地址:https://www.cnblogs.com/xibei666/p/4657515.html