神奇的WebSocket

之前应用webSocket解决过一个服务端处理时间过长,导致服务断开的问题,应用webSocket长链接的属性规避了这个问题,对于WebSocket的应用比较粗浅。
今天,我在浏览某网页的时候想要抓去网页上的数据,页面上的数据是不断变化,正常分析是使用ajax从服务端获取数据,再用js填充到页面中,但是当使用调试工具去获取rest接口时,发现没有相关的url,这就很奇怪了。可能是搜索关键字不准确,导致万能的度娘也没给出准确的解答。机缘巧合下,让我查到html5的WebSocket能实现相关的功能。

var webSocket = new WebSocket("wss://url/ws");
    webSocket.binaryType = "arraybuffer";
    webSocket.onopen = function(event){
        console.log(("webSocket connect at time: "+new Date()));
       //发送相关参数 
       webSocket.send("param"));
    }
   //接收信息
    webSocket.onmessage = function(event){
        var raw_data = event.data;
        //to do 
    }

    webSocket.onclose = function(){
        console.log("webSocket connect is closed");
        console.log(arguments);
    }
    webSocket.onerror = function(){
        console.log("error");
        console.log(arguments);
    }

对于像我这种对前端一知半解的开发来说,WebSocket还有一种防爬虫的功效。通过chrome network页面中的ws选项可以获取到相关数据,只会有一条记录,点开后会有一个data界面,里面是客户端和服务端的数据交互。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容