问题描述
我需要通过 JAVAfx 在 fxbrowser 中禁用 HTTP 证书检查,现在我将其称为
AnchorPane = new AnchorPane();
browserView _nodevW;
browser _browser = Engine.newInstance(
EngineOptions.newBuilder(
OFF_SCREEN
).addSwitch("--allow-running-insecure-content")
.chromiumDir(
"C:\\TMP\\JX"
).enableProprietaryFeature(
ProprietaryFeature.H_264
).enableIncognito().build()
_browser = engine.newbrowser();
_nodevW = browserView.newInstance(_browser);
_browser.navigation().loadUrl(url);
anchorPane.getChildren().addAll(_nodevW);
它适用于带有有效证书的普通 http 和 https,但对于自签名或证书无效,ERR_CERT_AUTHORITY_INVALID
如何告诉浏览器忽略无效证书(我无法在客户端计算机上安装证书,但我可以忽略它们)
解决方法
您可以忽略无效的 SSL 证书并使用以下方法继续加载 HTTPS 网页:
Network network = engine.network();
network.set(VerifyCertificateCallback.class,(params) ->
VerifyCertificateCallback.Response.valid());
您可以在 documentation 中阅读有关此 API 的更多信息。