0

每当我访问加载图像(https 服务器上的 http 图像)的基于 angularjs 的网站时,我都会在控制台中收到警告说混合内容已被阻止。而那些图像没有出现

它不是我的浏览器,因为它也发生在其他浏览器和其他系统上,它不是服务器,因为另一个不使用 angularjs 的网站可以正常工作。所以我认为它与angularjs有关。

我已经这样做了:

$sceDelegateProvider.resourceUrlWhitelist([
    'self',
    'http://images.RESOURCE.net/*'
]); 

但它什么也没做。此外,我尝试通过无协议的 url 加载它们,所以//images.RESOURCE.net

这会导致它们通过 https 加载,但是无法验证图像服务器的服务器标识,并且它也不起作用。

有没有人可以确定实际问题,是 angularjs 并且 angularjs 可以解决它吗?在当前状态下,几乎不可能从项目中删除 angularjs。

谢谢

-xCoder

4

1 回答 1

1

这不是 Angular 的限制。现代浏览器阻止通过安全 (https) 连接加载混合 (http) 内容。这可以通过调整您选择的浏览器中的设置来解决。

通过浏览器启用混合内容:

IE:http ://wiki.sln.suny.edu/display/SLNKB/Enabling+mixed+content+in+Internet+Explorer

火狐:http ://wiki.sln.suny.edu/display/SLNKB/Enabling+mixed+content+in+Mozilla+Firefox

铬:http ://wiki.sln.suny.edu/display/SLNKB/Enabling+mixed+content+in+Google+Chrome

于 2015-10-21T17:03:52.530 回答