HarmonyOS hook webview网络请求加载本地缓存的解决方案

webview加载过程中,通过网络请求读取远端的html、css、js等文件。希望通过hook webview网络请求,通过返回本地文件的内容,使webview加载本地文件,如果本地不存在对应文件的时候再通过网络读取。

  1. 请问webview组件针对上述问题是否有完整的解决方案?
  2. 目前通过复写
onInterceptRequest(callback: (event?: {
  /**
   * The url of the event.
   *
   * @syscap SystemCapability.Web.Webview.Core
   * @atomicservice
   * @since 11
   */
  request: WebResourceRequest;
}) => WebResourceResponse): WebAttribute;

方法实现上述需求,请问这个方法是在什么阶段调用的,是否只针对get请求,有什么是用限制(在什么情况下会失效或者绕过)?

  1. 是否可以hook webview发出的post请求?
HarmonyOS
1天前
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
superinsect

1、自定义页面请求响应:https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/web-resource-interception-request-mgmt-V5

2、onInterceptRequest:当Web组件加载url之前触发该回调,用于拦截url并返回响应数据。请求方法无限制。使用限制:WebResourceResponse的setResponseData方法只支持传入string、number、resource类型,并且需要同时设置setResponseEncoding、setResponseMimeType、setResponseHeader等参数,不支持异步提供数据

3、可以拦截拦截Web组件发起的网络请求,参考文档:https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/web-scheme-handler-V5

分享
微博
QQ
微信
回复
1天前
相关问题
确认网络状况解决方案
644浏览 • 1回复 待解决
HarmonyOS 卡片列表网络图片解决方案
32浏览 • 1回复 待解决
webview中跨域问题解决方案
2717浏览 • 1回复 待解决
HarmonyOS 通知推送解决方案
88浏览 • 1回复 待解决
HarmonyOS代码封装解决方案
703浏览 • 1回复 待解决
高级图表实现解决方案
718浏览 • 1回复 待解决
HarmonyOS 音频播放组件解决方案
39浏览 • 1回复 待解决
HarmonyOS事件通信能力解决方案
912浏览 • 1回复 待解决
HarmonyOS有访问相册有解决方案
392浏览 • 1回复 待解决
抓包应用,求解决方案
2010浏览 • 1回复 待解决
HarmonyOS C++模块引用解决方案
499浏览 • 1回复 待解决
HarmonyOS 部分文本高亮解决方案
43浏览 • 1回复 待解决
lazyforeach替换数据源解决方案
740浏览 • 1回复 待解决
HarmonyOS 音视频处理相关解决方案
558浏览 • 1回复 待解决
HarmonyOS 本地webView跨域方案
847浏览 • 1回复 待解决
图像处理库是否有替代解决方案
393浏览 • 0回复 待解决
包大小优化,有没有好解决方案
256浏览 • 2回复 待解决
图片存储解决方案谁知道啊?
2595浏览 • 1回复 待解决
应用包体积大小优化解决方案
550浏览 • 1回复 待解决
开发疑难问题如下,求解决方案
263浏览 • 1回复 待解决
支持图文混排组件及解决方案
305浏览 • 1回复 待解决
HarmonyOS WebView拦截网络请求
495浏览 • 1回复 待解决