HarmonyOS 鸿蒙Next web组件无法拦截三方重定向虚地址url

发布于 1周前 作者 zlyuanteng 来自 鸿蒙OS

HarmonyOS 鸿蒙Next web组件无法拦截三方重定向虚地址url

:web组件加载三方h5商城,通过截取自定义重定向的虚地址的url中的关键字段,来做判断,之后客户端重定向三方在虚地址中配的url(拼接参数后的),以达到信息的交互。目前的问题是,三方重定向的https的虚地址(404),鸿蒙拦截不到。
 

2 回复

onLoadIntercept可以拦截到重定向的url:

 Web({
        src: '',
        controller: this.controller
      })
        .domStorageAccess(true)
        .onLoadIntercept((event) => {
          console.log('url:' + event.data.getRequestUrl());
          console.log('isMainFrame:' + event.data.isMainFrame());
          console.log('isRedirect:' + event.data.isRedirect());
          console.log('isRequestGesture:' + event.data.isRequestGesture());
          return false;
        })
        .onOverrideUrlLoading((webResourceRequest: WebResourceRequest) => {
          if (webResourceRequest && webResourceRequest.getRequestUrl() == "about:blank") {
            return true;
          }
          return false;
        })
 

更多关于HarmonyOS 鸿蒙Next web组件无法拦截三方重定向虚地址url的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


HarmonyOS 鸿蒙Next web组件在处理三方重定向虚地址URL时,其内部机制遵循的是基于系统的安全策略和URL处理规范。如果遇到无法拦截三方重定向虚地址URL的情况,这通常是由于系统默认行为或组件本身的限制所致。

具体来说,鸿蒙系统在设计时考虑到了用户体验和安全性,对于某些类型的重定向可能会采取默认允许的策略。此外,web组件在处理URL时,也会遵循一定的规则和逻辑,以确保数据的正确传递和页面的正常跳转。

针对你提到的问题,如果确实需要拦截三方重定向虚地址URL,可以考虑从以下几个方面入手:

  • 检查组件配置:确保web组件的配置正确,没有遗漏或错误的设置导致无法拦截。
  • 利用系统API:查看鸿蒙系统提供的API文档,了解是否有提供相关的接口或方法用于拦截重定向。
  • 自定义处理逻辑:在web组件的代码中,尝试添加自定义的逻辑来处理URL重定向,比如通过检测URL的变化来判断是否发生了重定向,并据此进行拦截。

如果问题依旧没法解决请联系官网客服,官网地址是:https://www.itying.com/category-93-b0.html。

回到顶部