Phonegap / Cordova包括没有http / https的外部src



所以在这里,我正在启动一个Phonegap应用程序,并希望使用给定的库。在库代码中,它尝试使用以下形式访问某个 URL:

//img.site.com/given_img.png

一开始没有HTTP或HTTPS,所以它会很好地适应。但是当我在手机上启动该应用程序时,我看到它试图达到:

file://img.site.com/given_img.png

不是 http 或 https...但是文件协议。显然它无法加载...

有人知道如何处理这个问题吗?

提前谢谢!

据我所知,在研究了一段时间之后......目前没有开箱即用的解决方案。您必须使用 JS 检查代码,并在执行之前强制将所需的协议添加到其中。我只是改变了我想做事的方式,避免了这种情况。

拥有src="//domain.com/some/pic"背后的想法是,浏览器将使用与您的网站匹配的协议请求这些资产,这意味着,如果您的网站在http上运行 - 它将请求图片超过http,而如果您的网站正在运行https它将请求带有https://的图像。

@Jeremy是对的,目前别无选择。但是,您可以将您的网站与var protocol = window.location.protocol相匹配的协议,并在您的src={{ protocol + image }}中使用它

这是为了防止编写硬编码http / https,并在您的网站中将安全内容与不安全内容混合,从而导致错误像"This Page Contains Both Secure and Non-Secure Items"一样跳转

最新更新