zoukankan      html  css  js  c++  java
  • JxBrowser之三:常用函数setNetworkDelegate

    1、常用函数setNetworkDelegate,包含对网络传输数据状态的多种监控回调。

     

    2.着重说一下其中的几个函数

            BrowserContext browserContext = BrowserContext.defaultContext();
            NetworkService networkService = browserContext.getNetworkService();
            networkService.setNetworkDelegate(new DefaultNetworkDelegate() {
                //响应开始,一般来说,可以在这里初始化某些数据
                @Override
                public void onResponseStarted(ResponseStartedParams params) {
                    String url = params.getURL(); //针对某些特定url进行处理
                    if(url.equals("www.baidu.com")) {
                        receiveData = "";
                    }
                }
    
                //响应开始后,开始接收数据,由于数据块可能过大,可能会多次调用,也就是说可能一次Started,多次Received,需要我们进行拼接数据包,和socket拼包同理
                @Override
                public void onDataReceived(DataReceivedParams params) {
                    String url = params.getURL(); //针对某些特定url进行处理
                    //可以在这里对某些感兴起的数据进行收集
                    if(url.equals("www.baidu.com")) {
                        if (params.getMimeType().equals("application/json") || params.getMimeType().equals("text/html")) {
                            receiveData += new String(params.getData(), Charset.forName("UTF-8")); //累加数据
                        }
                    }
                }
    
                //这个函数不是说Response完成,而是Request完成(没有Response完成对应的回调函数!具体啥时候Response结束,这个需要根据页面情况进行判断!)
                @Override
                public void onCompleted(RequestCompletedParams params) {
                }
            });

    以上。

  • 相关阅读:
    理解MySQL——索引与优化
    ArrayList vs LinkedList vs Vector
    Java集合框架的接口和类层次关系结构图
    Java集合的10个最常见问题
    Mysql 中的事件//定时任务
    Mysql中的函数
    Mysql中的触发器
    Mysql中的存储过程
    Oracle数据库表的一些宏处理
    Oracle查询和过滤重复数据
  • 原文地址:https://www.cnblogs.com/chevin/p/10029373.html
Copyright © 2011-2022 走看看