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) { } });

 

 

 

以上。


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM