【问题标题】:Iframes not loaded when using JavaFX WebView使用 JavaFX WebView 时未加载 iframe
【发布时间】:2020-03-26 04:43:33
【问题描述】:

我正在使用 JavaFX WebView 加载网站。该网站正在使用 iframe。

它在经典浏览器上运行良好,但是当我使用 JavaFX WebView 显示页面时,框架是空的。

我尝试通过 Java 代码以编程方式显示 iframe 的内容(据此:How to get by javafx webview content iframe loaded page?)。是空的。

我还尝试在 JavaFX WebView disable Same origin policy (allow cross domain requests) 之后在客户端(通过覆盖 HTTP 标头)允许使用内容安全策略、X-Frame-Options 等的所有内容。它没有改变任何东西。

我添加了一个 WebConsoleListener 来查看一些日志。我没有错误。

有什么问题?有没有办法获取更多日志?

【问题讨论】:

    标签: java javafx iframe webview


    【解决方案1】:

    原来问题是这样的:iframe中的网站存在证书链问题(整个证书链不是由iframe中的网站传输的)。该问题是使用 SSLLabs 发现的。

    使用浏览器访问页面时没有问题,因为浏览器能够管理这种情况,但 sun JVM 无法做到这一点。

    在某处引发了 SSL 握手异常,但它被 JavaFX WebView 隐藏(在某处被捕获且此后未清晰显示)。

    因此,一旦发现问题,要解决它,我们就会退回到传统的解决方案:

    • 如果可能,修复证书链不完整的网站(推荐)
    • 如果不是,则通过将站点提供的证书添加到 cacerts 文件中来明确信任该证书,或者禁用 SSL 安全性(不推荐)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-03-29
      • 2012-11-01
      • 2023-03-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多