onInterceptRequest拦截URL并自定义HTML文件,页面加载失败

onInterceptRequest拦截页面Web的src的链接后返回自定义HTML,但是自定义HTML文件里面的script标签里的内容没有加载。

HarmonyOS
2024-01-21 13:48:41
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
WorldCreater

解决措施

设置拦截器时,如果只设置setResponseData,内核将无法识别到这是个HTML文件,需要同时设置setResponseEncoding、setResponseMimeType、setResponseHeader等参数。

代码示例

Web({ src: 'www.example.com', controller: this.controller }) 
  .onInterceptRequest((event) => { 
    console.log('url:' + event.request.getRequestUrl()) 
    this.responseweb = new WebResourceResponse(); 
    var head1:Header = { 
      headerKey:"Connection", 
      headerValue:"keep-alive" 
    } 
    var length = this.heads.push(head1) 
    this.responseweb.setResponseHeader(this.heads) 
    this.responseweb.setResponseData(this.webdata) 
    this.responseweb.setResponseEncoding('utf-8') 
    this.responseweb.setResponseMimeType('text/html') 
    this.responseweb.setResponseCode(200) 
    this.responseweb.setReasonMessage('OK') 
    return this.responseweb 
})

已于2024-1-31 11:53:36修改
分享
微博
QQ
微信
回复
2024-01-22 15:50:36
相关问题
如何使用和加载自定义字体
160浏览 • 1回复 待解决
自定义资源文件怎么读取?
277浏览 • 1回复 待解决
ArkTS如何自定义资源文件
333浏览 • 1回复 待解决
鸿蒙中如何自定义字体文件
17181浏览 • 1回复 待解决
华为手机是否支持自定义锁屏页面
2324浏览 • 1回复 待解决
如何在js文件中引入自定义js文件
5744浏览 • 1回复 待解决
自定义弹窗中的变量如何传递给页面
377浏览 • 1回复 待解决
是否支持自定义装饰器
225浏览 • 1回复 待解决
ArkTs如何自定义容器组件?
964浏览 • 1回复 待解决
自定义组件嵌套子组件
7333浏览 • 3回复 待解决
如何自定义Component 属性
12940浏览 • 3回复 待解决
自定义组件中如何添加图片?
762浏览 • 1回复 待解决
智慧推荐可以自定义app吗
5755浏览 • 1回复 待解决
如何设置自定义组件height缺省
145浏览 • 1回复 待解决
js 自定义组件如何传递方法?
4226浏览 • 2回复 待解决
自定义组件如何导出、引入?
374浏览 • 1回复 待解决
鸿蒙组件toast自定义样式
6658浏览 • 1回复 待解决
如何设置自定义弹窗位置
229浏览 • 1回复 待解决