使用javascript,我如何预加载没有路径源但数据库作为源的图像?
我有这样的事情:
var image = new Image();
image.src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAHElEQVQI12P4//8/w38GIAXDIBKE0DHxgljNBAAO9TXL0Y4OHwAAAABJRU5ErkJggg==";
我想在https页面上执行此操作但收到的错误是我在页面上混合了安全和非安全项目。有什么想法可以解决这个问题吗?
答案 0 :(得分:2)
每次引用任何非现场或非https文件时都会发生不安全的错误。这就是为什么一般你想通过引用链接到images / CSS / etc(包含'http://'的绝对路径会给出相同的错误)。根据某些浏览器安全策略,使用base64数据库创建的映像被视为外部和非安全。
编辑:另外,我建议你读这个:
https://dvcs.w3.org/hg/content-security-policy/raw-file/tip/csp-specification.dev.html
它讨论了一个关于如何指定哪种东西被认为是安全的不安全的提议。具体来说,尝试添加以下标题:
X-Content-Security-Policy: allow 'self'; img-src data: