• 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)交互的代码实现。

     代码下载

  • 相关阅读:
    VSCode使用笔记
    python调用C++
    ubuntu下编译C++程序
    使用swig在python中调用C++
    VSCode调试data层时自身的一个bug
    MNN配置
    金融业务中的命名惯例
    Clang的线程安全分析静态工具
    gdb命名记录
    开发小结-产品类
  • 原文地址:https://www.cnblogs.com/xibei666/p/4657515.html
Copyright © 2020-2023  润新知