HarmonyOS鸿蒙Next中web组件绕过自签名证书

HarmonyOS鸿蒙Next中web组件绕过自签名证书 web 自签名证书校验失败,可以直接绕过自签名校验吗?

3 回复

尝试使用onClientAuthenticationRequest方法,也可以在onSslErrorEventReceive函数中调用event.handler.handleConfirm()函数达到忽略ssl证书的效果

onClientAuthenticationRequest可参考:链接

onSslErrorEventReceive可参考:链接

更多关于HarmonyOS鸿蒙Next中web组件绕过自签名证书的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


在HarmonyOS鸿蒙Next中,Web组件默认会验证SSL证书的有效性,包括自签名证书。如果Web组件加载的网站使用了自签名证书,系统会认为该证书不安全,可能会阻止网页加载或显示安全警告。

要绕过自签名证书的验证,可以通过在Web组件的配置中设置setAllowUniversalAccessFromFileURLssetAllowFileAccessFromFileURLstrue,或者使用setMixedContentMode设置为MIXED_CONTENT_ALWAYS_ALLOW来允许加载不安全的内容。此外,可以通过自定义WebViewClient,重写onReceivedSslError方法,并在该方法中调用handler.proceed()来忽略SSL错误。

需要注意的是,绕过自签名证书验证会降低应用的安全性,可能导致敏感信息泄露或其他安全风险。因此,在实际开发中应谨慎使用,并确保在必要时采取其他安全措施。

在HarmonyOS鸿蒙Next中使用Web组件时,如果需要绕过自签名证书的验证,可以通过以下步骤实现:

  1. 自定义WebViewClient:创建一个自定义的WebViewClient类,并重写onReceivedSslError方法。在该方法中调用handler.proceed()以忽略SSL错误。

  2. 设置WebViewClient:将自定义的WebViewClient设置到Web组件中。

示例代码如下:

webView.setWebViewClient(new WebViewClient() {
    @Override
    public void onReceivedSslError(WebView view, SslErrorHandler handler, SslError error) {
        handler.proceed(); // 忽略SSL错误
    }
});

请注意,绕过自签名证书验证会降低安全性,建议仅在开发和测试环境中使用。

回到顶部