HarmonyOS 鸿蒙Next WebView 加载 rawfile 文件夹下的 html 网页,网页中的资源文件如 css/js 等无法加载

HarmonyOS 鸿蒙Next WebView 加载 rawfile 文件夹下的 html 网页时资源文件加载问题

WebView 加载 rawfile 文件夹下的 html 网页,网页中的资源文件如 css/js 等无法加载。html 与资源文件在同一目录下。HarmonyOS 鸿蒙Next环境下如何解决此问题。

webviewController.loadUrl($rawfile(‘index.html’))   

Access to script at ‘resource://rawfile/ce4c9d61cbbdfd9317f7.

js’ from origin ‘null’ has been blocked by CORS policy: Cross origin requests are only supported for protocol schemes: http, arkweb, data, chrome-extension, chrome, https, chrome-untrusted.


更多关于HarmonyOS 鸿蒙Next WebView 加载 rawfile 文件夹下的 html 网页,网页中的资源文件如 css/js 等无法加载的实战教程也可以访问 https://www.itying.com/category-93-b0.html

2 回复
从报错信息来看,应该是本地资源引用了非http的资源类型,导致了跨域错误, 可以使用Web组件的onInterceptRequest对本地资源进行拦截替换。关于解决此问题的解决方法和样例参考

请参考文档: https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/web-cross-origin-V5

更多关于HarmonyOS 鸿蒙Next WebView 加载 rawfile 文件夹下的 html 网页,网页中的资源文件如 css/js 等无法加载的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


在HarmonyOS鸿蒙Next环境下,当WebView加载位于rawfile文件夹下的HTML网页时,若HTML网页中的资源文件(如CSS、JS等)无法加载,通常是因为资源文件的路径未正确配置或WebView的加载机制问题。

解决此问题,可以通过以下方式:

  1. 确保路径正确:检查HTML中引用资源文件的路径是否正确。由于资源文件与HTML在同一目录下,应使用相对路径,如<link rel="stylesheet" href="style.css">

  2. 使用file://协议:在加载rawfile下的文件时,确保WebView的URL使用了file://协议,并且路径正确指向rawfile文件夹。例如,file:///data/local/tmp/yourapp/rawfile/index.html

  3. 配置WebView:检查WebView的配置,确保已正确设置允许加载本地资源。某些情况下,可能需要配置WebView的Settings,以允许访问本地文件。

  4. 调试和日志:使用鸿蒙提供的调试工具,检查WebView加载过程中的日志,看是否有错误信息提示资源文件加载失败。

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

回到顶部