java - 无法将页面加载到 WebView

标签 java javafx

我从早上起就一直在线,试图在 javafx 中将一个特定页面加载到 webview 中。每次我尝试它都会向我展示

Browser Error

You're using an older browser that doesn't pass security checks. Please use a newer browser

WebView wv = new WebView();
		wv.getEngine().setCreatePopupHandler(new Callback<PopupFeatures, WebEngine>() {

			@Override
			public WebEngine call(PopupFeatures p) {
				Stage stage = new Stage(StageStyle.UTILITY);
				WebView wv2 = new WebView();
				stage.setScene(new Scene(wv2));
				stage.show();
				return wv2.getEngine();
			}
		});

		StackPane root = new StackPane();
		root.getChildren().add(wv);
		 Stage primaryStage = new Stage();
		Scene scene = new Scene(root);

		primaryStage.setTitle("ONE YEAR PLAN");
		primaryStage.setScene(scene);
		primaryStage.show();
		wv.getEngine().load("http://paystack.com/pay/one_year_plan");

我不断收到此消息 error i got

最佳答案

我要大胆地说,在 JavaFX WebView 中成功加载此页面是不可能的。

paystack.com 上提供的页面会调用 https://www.howsmyssl.com/a/check 以检查浏览器的 SSL 设置。在 Chrome 中导航到此 URL 将返回一个 JSON 对象,其中包含有关 Chrome SSL 支持的信息。尝试使用 JavaFX WebView 访问相同的 URL 将返回 404 错误。然后 PayStack 页面捕获 404 错误并显示您看到的警告消息。

我不能责怪 PayStack 想要锁定他们的网站。许多其他金融机构也会这样做。我对 GUI 中网络浏览器组件的局限性也并不感到惊讶:根据我的经验,这些组件永远不会像“适当的”网络浏览器那样功能齐全。

抱歉,但我怀疑您将不得不放弃这个。

关于java - 无法将页面加载到 WebView ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40948205/

相关文章:

google-chrome - 浏览器中的javafx

JavaFX - 如何关闭 ToggleButton 的自动 setSelected(bool) 功能?

java - SceneBuilder 不显示第 3 方控件

mysql - 警告消息不显示

java - 将 Log4j 记录器放入多个类中

java - Tomcat 和 Matlab 编译器运行时内存不足错误

java - 为什么输入流的返回类型不是int?

java - 如何在 JavaFX 中制作 TimeSpinner?

java - 将 SelectItem[] 保存到 List<Hotel> 对象

java - ByteBuddy 附加到本地正在运行的进程