自v38以来,Chrome扩展程序无法从HTTP URL加载,解决方法?
我们网站的用户运行我们的Chrome插件,其中包括通过Chrome扩展开发页面上描述的XMLHttpRequest执行跨源请求。 这几年来一直运行良好。 但是,自从我们的用户升级到最新版本的Chrome(v38)后,这些请求就失败了。 我们的网站运行在HTTPS上,并且通过我们的内容脚本加载的一些URL在HTTP上。 消息是:
[blocked] https://www.ourpage.com/上的页面通过HTTPS加载,但是从http://www.externalpage.com运行不安全的内容:此内容也应该通过HTTPS加载。
发生错误的报告行位于发出HTTP调用的内容脚本中:
xhr.send(null);
我无法控制外部页面,我宁愿不从我们自己的页面中删除SSL。 问题:这是一个错误还是有一个我不知道的解决方法?
(注意:清单中的权限始终设置为<all_urls>
,这个权限已经工作了很长时间,将它设置为http://*/
和https://*/
并没有帮助。
如果可能,请使用该外部页面的https版本。
如果这是不可能的,使用后台页面来处理AJAX请求( 例子 )。
- Google Chrome扩展程序中的网页抓取(JavaScript + Chrome API)
- Google Chrome扩展程序 – 如何开启/closuresJavaScript?
- 如何在本地chrome扩展中保存信息?
- 如何从Chrome中的文件input中删除“无文件select”工具提示?
- Google Chrome浏览器打印分页符
- 无法在“窗口”上执行“btoa”:要编码的string包含Latin1范围之外的字符。
- 如何在Google Chrome中一步移除所有断点?
- jQuery .load()在Chrome中不起作用
- 使用JavaScript / JQuery将HTML表格数据导出到Excel在Chrome浏览器中无法正常工作