Angular templateUrl 在 https 上被阻止 “此请求已被阻止;内容必须通过HTTPS提供
Angular templateUrl blocked on https "This request has been blocked; the content must be served over HTTPS."
正如标题所述,我有一个角度指令在我的项目"/views/modals/help.html"中加载模板
模板网址在本地主机和仅使用 http 的测试服务器上完美运行。但是,当我到达使用 https 的服务器时,出现错误:"此请求已被阻止;内容必须通过HTTPS提供。
我找不到任何讨论如何将模板URL与https一起使用的文档。任何帮助不胜感激!
好的,所以问题是Angular在HTTPS页面上加载了一个templateUrl。我原本希望它会尝试通过 HTTPS 加载模板,因为角度、控制器、指令等是通过 HTTPS 页面上的相对 URL 加载的,在我看来,这意味着它们是用 HTTPS 加载的。
无论出于何种原因,angular 都没有通过 HTTPS 加载模板。所以我稍微改变了我的指令:
templateUrl: function() {
var useHTTPS = window.location.href.indexOf('https') > -1;
if (useHTTPS) {
return 'https://www.example.com/path/to/htmlfile.html';
} else {
return '/path/to/htmlfile.html';
}
}
问题是,如果您加载https网页,则页面上的所有资源也必须使用https进行检索。
因此,如果您的模板从 http 主机检索到 https 主机,它们将被阻止。源主机必须实现 https。
P.S 另一件事 https://letsencrypt.org/已经开始为您的服务器提供免费的HTTPS认证。当他们与思科,Chrome和Mozilla等巨头合作时,看起来是一个有前途的项目。
相关文章:
- 我需要为我的朋友在这个项目上提供帮助
- Grunt-connect在根目录之外提供静态文件
- 关于引入外部javascript文件的问题&css通过https
- jquery ajax https调用给出ERR_INSECURE_RESPONSE
- 如何提供在javascript中编写对对象的重复访问以设置元素样式的简写
- AngularJS错误:提供程序必须从$get工厂方法返回值
- 文档就绪提供了错误的选择器高度
- 为图像提供灯箱效果
- 如果在代码末尾进行求值,jQuery-console.log将提供空数组
- 如何通过安全的https连接在javascript中使用基于soap xml的Web服务
- $https请求的安全性
- 提供“;onClick"适用于iPad(触摸屏)和桌面用户的默认功能
- 为什么redirect_to _path提供HTTP而不是HTTPS网址
- Angular templateUrl 在 https 上被阻止 “此请求已被阻止;内容必须通过HTTPS提供
- 检查用户提供的网址是否会重定向到 https 或 http
- JS文件未通过HTTPS提供服务
- Chrome扩展出错-“;混合内容:此请求已被阻止;内容必须通过HTTPS来提供”;
- 从单节点进程提供两个https主机名&港口城市
- AngularJS:通过https提供$resource,Angular从https切换到http
- 使用GoDaddy提供的SSL证书安装节点https服务器