如何在cordova webview中加载第三方非安全图像?

Posted

技术标签:

【中文标题】如何在cordova webview中加载第三方非安全图像?【英文标题】:How to load third party non-secure images in cordova webview? 【发布时间】:2017-06-26 11:12:51 【问题描述】:

我正在尝试在 cordova webview 中从另一个网站加载图像,但出现以下错误

混合内容:“https://www.website.com/”处的页面通过 HTTPS 加载,但请求了不安全的图像“http://www.image-site.com/image.JPG”。此请求已被阻止;内容必须通过 HTTPS 提供。

如何解决?

【问题讨论】:

只需将您的请求更改为https://www.image-site.com/image.JPG 【参考方案1】:

我找到了解决方案;这个想法是在inappbrowser中使用androidMIXED_CONTENT_COMPATIBILITY_MODE。 您必须编辑文件platforms/android/src/org/apache/cordova/inappbrowser/InAppBrowser.java

并在WebSettings settings = inAppWebView.getSettings(); 行旁边添加:

settings.setMixedContentMode(WebSettings.MIXED_CONTENT_COMPATIBILITY_MODE);

这不是一个好的解决方案,因为您正在编辑插件的 src,如果您更新它,您将丢失更改...但它对我有用 ;)

【讨论】:

唯一有效的解决方案。在我的情况下,文件位于platforms\android\app\src\main\java\org\apache\cordova\inappbrowser\InAppBrowser.java

以上是关于如何在cordova webview中加载第三方非安全图像?的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Cordova 插件中加载数据文件?

Android WebView 混合内容未在 api 级别 < 21 中加载

如何使用 Android Kotlin 在 WebView 中加载 URL?

如何从 URL 在 webView 中加载 PDF?

如何在 Android WebView 中加载本地图像

Cordova 4.0 上的 Android 片段内的 Cordova webview