从v38开始,Chrome扩展无法再从HTTP URL加载,解决方法



我们网站的用户运行我们的Chrome插件,该插件通过XMLHttpRequest执行跨源请求,如Chrome扩展开发页面所述。这几年来一直运行良好。然而,自从我们的用户升级到最新版本的Chrome(v38)后,这些请求就失败了。我们的网站运行在HTTPS上,通过我们的内容脚本加载的一些URL是在HTTP上。消息是:

[已阻止]位于'的页面https://www.ourpage.com/'已加载HTTPS,但从"运行了不安全的内容http://www.externalpage.com':这些内容也应该通过HTTPS加载。

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

xhr.send(null);

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

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

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

如果这不可能,请使用后台页面来处理AJAX请求(示例)。

相关内容

  • 没有找到相关文章

最新更新