HTTPS 站点:通过 HTTP 加载外部 CSS
HTTPS Site: Load an external CSS over HTTP
我有一个安全的(HTTPS)Web应用程序,需要从不安全的(HTTP)源(客户自己的网站)加载自定义样式表。这被现代浏览器阻止了,但是我需要解决方法,因为:
1) 我不能要求我的客户在 HTTPS 上托管他们的自定义样式表。他们没有专业知识,其中一些人有关于可以托管哪些主机和区域的政策(具有讽刺意味的是,不是关于HTTPS)。 2)我显然不能要求最终用户禁用浏览器中的安全功能。
我尝试过,使用<style>@import url(...);</style>
加载样式表,我尝试使用 src="about:blank" 创建一个 iframe 并从那里加载样式表,我尝试了 XHR 并获取(但这需要在远程主机上启用 CORS,这是我无法合理期望的)。
除了创建一个可以在网络上提供任何样式表的安全代理之外,我在这里缺少任何其他解决方法吗?
有什么巫术可以让我的页面通过HTTP加载跨源样式表吗?
如果有解决方法可以在安全页面上加载不安全的资源,则应尽快对其进行修补。否,该策略之所以存在,是因为如果没有所有资源的 HTTPS,您就没有真正的安全。任何 HTTP 连接都可能被拦截和中间人,因此页面不安全。即使是像样式表这样小的东西也会破坏这种安全性。
您将不得不通过HTTPS提供样式表,如果您的客户无法做到这一点,您将不得不为他们做。
是否可以下载他们的CSS服务器端,并通过HTTPS将其提供给您自己的用户?
我尝试用我构建的 Web 应用程序做同样的事情。您要执行的操作的真正问题是浏览器。它不允许安全连接被不安全的连接破坏,尤其是当您想在该页面上注入某些内容时。我使用了这种技术:
document.createElement("link")
要注入。由于浏览器安全性是一个大问题,我认为您不会发现黑客攻击。祝你好运!:)
- 使用javascript在Flash中加载外部图像
- 如何在运行时在angular 2中加载外部js脚本
- Chrome扩展无法通过清单加载外部javascript
- 加载Angular视图后加载外部脚本
- Cordova/Phonegap在主要的Cordova网络视图中加载外部站点
- IE 9 BHO插件.加载外部JS文件时出现错误SCRIPT1014
- 是否有用于加载外部脚本的JavaScript库
- 使用纯Javascript加载外部URL内容
- 在Chrome扩展中加载外部javascript
- 在扩展 jQuery 之前加载外部资源
- 无法加载外部 JavaScript 文件 - Codeigniter
- jquery .load() 不加载外部 JS
- GO - html 文件无法加载外部 js 文件
- jQuery 不会使用 .load() 加载外部 html 模板
- 使用HTML5缓存时无法加载外部资源
- 色盒延迟打开;锁定“;当加载外部javascript文件时
- 使用load()加载外部文件,然后使用fancybox插件进行修改并显示
- 在Ember应用程序中加载外部域脚本
- html javascript加载外部脚本
- 如何防止加载外部资源,同时防止“在'文档'上执行'写入'失败”错误