自v38起,Chrome扩展程序无法再从HTTP网址加载,解决方法?

时间:2014-10-09 18:28:51

标签: google-chrome google-chrome-extension xmlhttprequest cross-domain

我们网站的用户运行我们的Chrome插件,其中包括Chrome extension development pages所述的XMLHttpRequest执行跨源请求。这已经运行了好几年了。但是,自从我们的用户升级到最新版本的Chrome(v38)后,这些请求都失败了。我们的网站使用HTTPS运行,并且通过我们的内容脚本加载的一些网址在HTTP上。消息是:

  

[已屏蔽]已加载“https://www.ourpage.com/”页面   HTTPS,但从“http://www.externalpage.com”运行了不安全的内容:   此内容也应通过HTTPS加载。

发生错误的报告行位于我发出HTTP调用的内容脚本中:

xhr.send(null);

我无法控制外部页面,我宁愿不从我们自己的页面中删除SSL。问题:这是一个错误还是有一个我不知道的解决方法?

(注意:清单中的权限始终设置为<all_urls>已经工作了很长时间。将其设置为http://*/https://*/没有帮助。)

1 个答案:

答案 0 :(得分:10)

如果可能,请使用该外部页面的https版本。

如果无法做到这一点,请使用后台页面来处理AJAX请求(example)。