- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我正在尝试打开证书有问题的网站,经过长时间的研究,我找到了通过覆盖 onReceivedSslError
方法传递证书错误的方法,然后继续错误 handler.proceed();
,但是当我打开网站时出现此异常
webView.setWebViewClient(new WebViewClient() {
@Override
public void onPageFinished(WebView view, String url) {
super.onPageFinished(view, url);
String[] urls = new String[]{url};
new ParseURl().execute(urls);
}
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
if (!url.equals("about:blank")) {
view.loadUrl(url);
}
return false;
}
@Override
public void onReceivedSslError(WebView view, SslErrorHandler handler, SslError error) {
handler.proceed();
}
});
异常日志
12-26 05:28:11.719 5681-5832/com.example.mina.speechrecognition D/dalvikvm: GC_FOR_ALLOC freed 350K, 13% free 4084K/4652K, paused 7ms, total 8ms
12-26 05:28:12.599 5681-5681/com.example.mina.speechrecognition D/TilesManager: Starting TG #0, 0xb85683a0
12-26 05:28:12.599 5681-5681/com.example.mina.speechrecognition D/TilesManager: new EGLContext from framework: b83b4440
12-26 05:28:12.599 5681-5681/com.example.mina.speechrecognition D/GLWebViewState: Reinit shader
12-26 05:28:13.067 5681-5681/com.example.mina.speechrecognition D/GLWebViewState: Reinit transferQueue
12-26 05:28:13.095 5681-5681/com.example.mina.speechrecognition W/Web Console: The page at https://noor.moe.gov.sa/Noor/login.aspx ran insecure content from http://www.moe.gov.sa/_layouts/15/MOE/script/MOECommon.js.
at null:1
12-26 05:28:18.935 5681-6039/com.example.mina.speechrecognition W/System.err: javax.net.ssl.SSLHandshakeException: java.security.cert.CertPathValidatorException: Trust anchor for certification path not found.
12-26 05:28:18.951 5681-6039/com.example.mina.speechrecognition W/System.err: at org.apache.harmony.xnet.provider.jsse.OpenSSLSocketImpl.startHandshake(OpenSSLSocketImpl.java:401)
12-26 05:28:18.951 5681-6039/com.example.mina.speechrecognition W/System.err: at libcore.net.http.HttpConnection.setupSecureSocket(HttpConnection.java:209)
12-26 05:28:18.951 5681-6039/com.example.mina.speechrecognition W/System.err: at libcore.net.http.HttpsURLConnectionImpl$HttpsEngine.makeSslConnection(HttpsURLConnectionImpl.java:478)
12-26 05:28:18.951 5681-6039/com.example.mina.speechrecognition W/System.err: at libcore.net.http.HttpsURLConnectionImpl$HttpsEngine.connect(HttpsURLConnectionImpl.java:433)
12-26 05:28:18.951 5681-6039/com.example.mina.speechrecognition W/System.err: at libcore.net.http.HttpEngine.sendSocketRequest(HttpEngine.java:290)
12-26 05:28:18.951 5681-6039/com.example.mina.speechrecognition W/System.err: at libcore.net.http.HttpEngine.sendRequest(HttpEngine.java:240)
12-26 05:28:19.011 5681-6039/com.example.mina.speechrecognition W/System.err: at libcore.net.http.HttpURLConnectionImpl.connect(HttpURLConnectionImpl.java:81)
12-26 05:28:19.011 5681-6039/com.example.mina.speechrecognition W/System.err: at libcore.net.http.HttpsURLConnectionImpl.connect(HttpsURLConnectionImpl.java:165)
12-26 05:28:19.011 5681-6039/com.example.mina.speechrecognition W/System.err: at org.jsoup.helper.HttpConnection$Response.execute(HttpConnection.java:449)
12-26 05:28:19.115 5681-6039/com.example.mina.speechrecognition W/System.err: at org.jsoup.helper.HttpConnection$Response.execute(HttpConnection.java:434)
12-26 05:28:19.119 5681-6039/com.example.mina.speechrecognition W/System.err: at org.jsoup.helper.HttpConnection.execute(HttpConnection.java:181)
12-26 05:28:19.123 5681-6039/com.example.mina.speechrecognition W/System.err: at org.jsoup.helper.HttpConnection.get(HttpConnection.java:170)
12-26 05:28:19.123 5681-6039/com.example.mina.speechrecognition W/System.err: at com.example.mina.speechrecognition.WebActivity$ParseURl.doInBackground(WebActivity.java:156)
12-26 05:28:19.123 5681-6039/com.example.mina.speechrecognition W/System.err: at com.example.mina.speechrecognition.WebActivity$ParseURl.doInBackground(WebActivity.java:150)
12-26 05:28:19.123 5681-6039/com.example.mina.speechrecognition W/System.err: at android.os.AsyncTask$2.call(AsyncTask.java:287)
12-26 05:28:19.123 5681-6039/com.example.mina.speechrecognition W/System.err: at java.util.concurrent.FutureTask.run(FutureTask.java:234)
12-26 05:28:19.123 5681-6039/com.example.mina.speechrecognition W/System.err: at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:230)
12-26 05:28:19.123 5681-6039/com.example.mina.speechrecognition W/System.err: at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1080)
12-26 05:28:19.123 5681-6039/com.example.mina.speechrecognition W/System.err: at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:573)
12-26 05:28:19.123 5681-6039/com.example.mina.speechrecognition W/System.err: at java.lang.Thread.run(Thread.java:841)
12-26 05:28:19.123 5681-6039/com.example.mina.speechrecognition W/System.err: Caused by: java.security.cert.CertificateException: java.security.cert.CertPathValidatorException: Trust anchor for certification path not found.
12-26 05:28:19.459 5681-6039/com.example.mina.speechrecognition W/System.err: at org.apache.harmony.xnet.provider.jsse.TrustManagerImpl.checkTrusted(TrustManagerImpl.java:282)
12-26 05:28:19.459 5681-6039/com.example.mina.speechrecognition W/System.err: at org.apache.harmony.xnet.provider.jsse.TrustManagerImpl.checkServerTrusted(TrustManagerImpl.java:202)
12-26 05:28:19.463 5681-6039/com.example.mina.speechrecognition W/System.err: at org.apache.harmony.xnet.provider.jsse.OpenSSLSocketImpl.verifyCertificateChain(OpenSSLSocketImpl.java:595)
12-26 05:28:19.463 5681-6039/com.example.mina.speechrecognition W/System.err: at org.apache.harmony.xnet.provider.jsse.NativeCrypto.SSL_do_handshake(Native Method)
12-26 05:28:19.463 5681-6039/com.example.mina.speechrecognition W/System.err: at org.apache.harmony.xnet.provider.jsse.OpenSSLSocketImpl.startHandshake(OpenSSLSocketImpl.java:398)
12-26 05:28:19.467 5681-6039/com.example.mina.speechrecognition W/System.err: ... 19 more
12-26 05:28:19.467 5681-6039/com.example.mina.speechrecognition W/System.err: Caused by: java.security.cert.CertPathValidatorException: Trust anchor for certification path not found.
12-26 05:28:19.467 5681-6039/com.example.mina.speechrecognition W/System.err: ... 24 more
我分析网站并提取 ID
public class ParseURl extends AsyncTask<String, Void, Boolean> {
@Override
protected Boolean doInBackground(String... params) {
try {
listID.clear();
Document doc = Jsoup.connect(params[0]).get();
Elements inputs = doc.select("input[type=text], input[type=password], input[type=email]");
for (Element ele : inputs) {
listID.add(ele.attr("id"));
}
} catch (IOException e) {
e.printStackTrace(); // exception fired here
Log.i("error stack", e.getMessage());
}
if (listID.size() > 0) {
return true;
}
return false;
}
@Override
protected void onPostExecute(Boolean result) {
super.onPostExecute(result);
if (result) {
// Toast.makeText(WebActivity.this, "Analysis site Done", Toast.LENGTH_LONG).show();
//startReadInput();
} else {
Toast.makeText(WebActivity.this, "your site dont have input to fill", Toast.LENGTH_LONG).show();
}
}
}
最佳答案
我已经尝试使用您的 logcat 中显示的网站 url,它有效
final String url = "https://noor.moe.gov.sa/Noor/login.aspx";
WebView mWebView = (WebView) v.findViewById(R.id.webView);
mWebView.setInitialScale(1);
mWebView.getSettings().setUseWideViewPort(true);
mWebView.setWebViewClient(new WebViewClient(){
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
if (!url.equals("about:blank")) {
view.loadUrl(url);
}
return false;
}
@Override
public void onReceivedSslError(WebView view, SslErrorHandler handler, SslError error) {
handler.proceed();
}
});
mWebView.loadUrl(url);
这是截图
关于java.security.cert.CertPathValidatorException : Trust anchor for certification path not found,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34470527/
你发现标题的不同了吗? (对我来说,花了一些时间) 所以我按顺序使用了连接到 java.security.cert.X509Certificate 的充气城堡创建证书。现在我正在寻找一种从原始字节创建
我有一整天都在努力解决的问题,但就是无法重建。我遇到了引发 CertificateNotYetValidException 异常的问题: java.security.cert.CertificateN
我有一个服务器和一个客户端。我让他们都在同一台机器上运行。我正在尝试在客户端和服务器之间建立 SSL 连接。我已经使用以下 keytool 命令为服务器和客户端生成了证书。 对于客户keytool -
在本地,我一直在使用一个 Nginx 容器进行开发,该容器在一个目录中包含所有 ssl 配置和 ssl 证书。 但是,既然我即将转向生产,我很好奇将证书放在 nginx 容器中是否是一种好的做法? 或
我想根据 CRL 验证客户端提供的 X509 证书是否已被吊销。我已经成功地实例化了一个 java.security.cert.X509CRL,但是我在检索 session 证书时遇到了问题: try
我在使用 X509TrustManager 检查服务器是否可信时收到异常错误。我按照开发人员的说明进行操作:https://developer.android.com/training/article
我正在尝试使用 Java 代码从安全(即 SSL)网页中读取内容。我正在尝试同时使用 URLConnection (java.net) 和 Apache 的 HTTPClient。在这两种情况下,当我
如果我仅使用证书(带链)和私钥发出 openssl 调用,我会遇到服务器拒绝握手中的客户端证书的问题。 如果我还设置了 cafile 参数并将其指向与证书相同的文件,这个问题就会消失。 即使信息已经在
我正在使用由 CA 文件签名的证书来保护 kubernetes API。为此,我将我的 CA 文件 sa.crt 添加到 /etc/pki/ca-trust/source/anchors/ 并使用命令
我使用facepy与python进行GAE 我遇到了一个错误,当我跟踪该错误时,我发现 from . import certs 在utils.py文件中 点(.)是什么意思? certs.py 与 u
本文整理了Java中org.bouncycastle.cert.X509CRLHolder类的一些代码示例,展示了X509CRLHolder类的具体用法。这些代码示例主要来源于Github/Stack
本文整理了Java中org.bouncycastle.cert.X509v2CRLBuilder类的一些代码示例,展示了X509v2CRLBuilder类的具体用法。这些代码示例主要来源于Github
本文整理了Java中org.bouncycastle.cert.X509ExtensionUtils类的一些代码示例,展示了X509ExtensionUtils类的具体用法。这些代码示例主要来源于Gi
本文整理了Java中org.bouncycastle.cert.X509AttributeCertificateHolder类的一些代码示例,展示了X509AttributeCertificateHo
我按照此说明在我的 EKS 集群上设置了一个证书管理器 https://cert-manager.io/docs/tutorials/acme/ingress/ . 这是我的入口 apiVersion
遵循https://cert-manager.io/docs/installation/kubernetes/中提到的步骤 # Kubernetes 1.16+ $ kubectl apply --v
我按照此说明在我的 EKS 集群上设置了一个证书管理器 https://cert-manager.io/docs/tutorials/acme/ingress/ . 这是我的入口 apiVersion
过去 2 天我遇到了此错误。这似乎是 python requests 库的问题,但我已经重新安装了好几次了,但没有成功。 Traceback (most recent call last):
我有一台运行 Debian 8.1、Apache 2.4.10 和 OpenSSL 1.0.1k 的服务器。我有一个域 example.com,其中包含几个子域,例如 www.example.com、
我正在使用 cUrl 从公司网站请求数据,使用他们发送给我的 .cer 证书。这是命令: cUrl --header "Content-Type: text/xml;charset=UTF-8" \
我是一名优秀的程序员,十分优秀!