2014-10-17 23 views
1

在我的Djanog Web应用程序中,我添加了SSL安全性。现在,在Django应用程序中,我集成了一个运行在http://上的外部API。运行SSL的Django应用程序的白名单http:content?

这是我调用外部API后得到的错误。 [blocked]'https://mywebsite.com'上的页面通过HTTPS加载,但运行'http://api.external.com/moto.json?'的不安全内容:此内容也应通过HTTPS加载。

任何人都可以帮助我在这里如何白名单所需的外部域名。我在Apache服务器上运行应用程序。所以这将必须在Apache设置或Django中完成。

回答

0

不幸的是,这是在浏览器上完成的事情,因为它不能从应用程序或Web服务器控制。

这里是解释这种行为的help article from Chome

网站向索要敏感信息,比如用户名和密码 ,经常使用安全连接来传输从您所使用的计算机的内容和 。如果您通过安全的 连接访问网站,Google Chrome会验证网页 上的内容是否已安全传输。如果它在 上检测到某些类型的内容,则该页面来自不安全的频道,它会自动阻止 加载内容,并且您会看到地址栏中出现盾牌图标不安全内容 盾牌图标。通过屏蔽内容和可能存在的安全漏洞,Chrome可保护您在页面 上的信息免于落入不法之徒手中。

阻止这种情况发生的唯一方法是通过HTTPS访问API。

+0

感谢Burhan作出快速回应。这可能是我无法在网上找到解决方案的原因。我正在尝试使用django包https://github.com/ottoyiu/django-cors-headers,但尚未成功将某些域的http内容列入白名单。 – nazareth 2014-10-17 10:29:07

+0

CORS不是为了这个 - 另外,如果CORS是答案,它将需要由API提供者实现,而不是在你的最终。 – 2014-10-17 10:31:24

相关问题