显示来自远程服务器的图像:
<img src="http://remotehost/path/to/a.png" alt="Image A" />
但是,如果通过 HTTPS 访问当前页面,则通过未加密的 HTTP 链接图像将产生安全警告。虽然我可以只指定 https:// 而不管当前协议如何,但这样做会很浪费,因为除非有必要(当访问者使用 HTTPS 时),否则我真的不关心保护此图像的传输。
是否可以为 img 标签的 src 属性指定一个 URL,以便根据用于访问当前页面的协议动态选择 URL 中的协议?为了说明我的意思:
<img src="(JavaScript's window.location.protocol)//remotehost/path/to/a.png" alt="Image A" />
如果我们使用 JavaScript 会怎样?我们可以给 img 标签一个 id 以便我们可以找到它并将 src 设置为以 window.location.protocol 开头。
也可以使用 base64 完全绕过 HTTP/HTTPS 问题,但这对于我正在做的事情并不理想。
大家有什么可以推荐的?