当前位置: 首页 > 知识库问答 >
问题:

Xamarin.forms android WebView空白表示没有有效的SSL证书(开发环境)

弓俊晖
2023-03-14

>

  • 带有Android 4 IC上SSL客户端证书的WebView

    public void onReceivedClientCertRequest(WebView视图,ClientCertRequestHandler处理程序,String host_and_port)

    ClientCertRequestHandler不知道并且不知道要引用的程序集

      null
  • 共有1个答案

    濮书
    2023-03-14

    解决方案是在JavaScript WebClient类上重写OnReceivedSslError方法,如下所示:

        public class JavascriptWebViewClient : WebViewClient
    {
        string _javascript;
    
        public JavascriptWebViewClient(string javascript)
        {
            _javascript = javascript;
        }
    
        public override void OnReceivedSslError(Android.Webkit.WebView view, SslErrorHandler handler, Android.Net.Http.SslError error)
        {
            //base.OnReceivedSslError(view, handler, error);
            handler.Proceed();
        }
    
        public override void OnPageFinished(Android.Webkit.WebView view, string url)
        {
            base.OnPageFinished(view, url);
            view.EvaluateJavascript(_javascript, null);
        }
    }
    

    问题是,添加OnReceivedSllError后,我有两个MAX_PATH错误...不知道为什么,但是重建或清洗解决方案都不起作用。

    我清理了解决方案几次,移动到最靠近根文件夹的地方。清除和重建而不使用run,那么run对我有效,但此方法上没有断点停止。

     类似资料:
    • 问题内容: 是否可以在不使用Java证书的情况下将ssl与httpconnection一起使用?我想使用随机数或密钥。 感谢Raihan 问题答案: 尽管SSL / TLS并非严格要求证书,但HTTPS 要求使用证书,因为RFC 2818 (尤其是第3.1节)明确提到了X.509证书。 您可以在ServerFault的此答案中找到一个非常类似的问题的更多详细信息。 没有证书的任何操作都将超出RFC

    • 我已经在我的spring boot应用程序中启用了ssl,并且任何时候我想使用像GooglePis或facebook这样的Rest服务,我都必须在TrustStore中添加证书。 我使用openssl获取证书: openssl s_client-connect googleapis.com:443 并将其导入truststore: keytool.exe-import-noprompt-trust

    • 并检查证书,有效期为5天。 我需要写一个脚本,它将只是检查这个证书的过期日期,但不幸的是,它不能验证它。你能不能换个正确的流量? 我的程序:

    • 我正在通过安全连接测试客户端服务器。 我将密钥库证书加载到SOAPUI中,并能够连接到服务器的组件。但是,当我在JMeter v2中配置相同的密钥库证书时。13,我得到了这个错误: 响应代码:非HTTP响应代码:javax。网ssl。SSLHandshakeException响应消息:非HTTP响应消息: 我已经参考了发现的许多建议,并已配置路径到我的密钥库和密码在杰米的system.proper

    • 问题内容: 以下代码在JDK 11中引发错误: 错误是: 它可以在任何以前的JDK中使用(我已经在7、8、9和10中进行了测试)。 该证书似乎是有效的,因为它已被浏览器或我在互联网上找到的大多数SSL测试所识别。 我尝试禁用主机名验证,禁用cacerts,将DigiCert添加到cacerts文件中没有任何运气。 似乎是openJDK中的错误。在版本26、27和28(候选发布)中进行了测试。 问题

    • 我最近为我的maven repo(Apache代理背后的人工制品)切换到了letsencrypt证书。通过浏览器访问回购协议工作正常,证书没有问题(下面的屏幕截图)。 如果我手动将证书导入到java密钥库中,它也可以工作。 但是根据这个SO问题,Java应该接受以8u101开头的lets加密证书。 我总是遇到这样的例外: