【问题标题】:How to get Latest Chrome (Version 55) to allow mixed content?如何获取最新的 Chrome(版本 55)以允许混合内容?
【发布时间】:2017-05-20 18:52:45
【问题描述】:

我有一个 chrome 扩展,在开发中使用 HTTP 通信,在生产中使用 HTTPS。

我从使用 HTTPS 的网页运行它。

当我在开发模式下使用此扩展时,我收到以下错误。

混合内容:“https://somesite.com”处的页面通过 HTTPS 加载,但请求了不安全的 XMLHttpRequest 端点“http://david-sniper.local:3001/api/end-point”。此内容也应通过 HTTPS 提供。

过去我可以通过阅读这篇文章how-to-get-chrome-to-allow-mixed-content来解决这个错误

这篇文章有两个解决方案。

  1. "C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" --allow-running-insecure-content
  2. 在地址栏右端应该有一个“盾牌”图标,你可以点击它来运行不安全的内容。

第一个解决方案我从来没有成功过,但是您单击“盾牌”图标的第二个解决方案直到几周前才起作用。

我现在使用的是 Chrome 55,并且没有可以点击的 Shield 选项,所以我想知道如何让混合内容在开发者模式下工作?

【问题讨论】:

  • 虽然这不是您所要求的,但正确的答案是您使您的开发环境尽可能接近于您的生产环境。换句话说,两者都使用 HTTPS。让您的开发环境,或者至少是您的开发测试环境与您的生产环境不同,只是在将代码从开发转移到生产环境时提出问题,而这真的不是 当你想发现问题时。
  • console 的消息是警告,而不是错误,是吗?
  • 实际请求被阻塞,例如没有执行对 jora-list 的调用,因此虽然消息是警告,但效果是代码损坏。
  • 有一个chrome启动参数可以禁用所有安全。调查一下。

标签: javascript ajax google-chrome google-chrome-extension mixed-content


【解决方案1】:

按照 Zig Mandel 的提示,我使用命令行参数在没有安全性的情况下运行 Chrome。

我创建了一个名为 c:\_chrome_data 的文件夹,并将我的开发者扩展程序解压缩到 chrome 扩展程序中,并使用了这个命令行。

"C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" --allow-running-insecure-content --disable-web-security --user-data-dir=C:\_chrome_data

单击盾牌,我注意到盾牌在 chrome 55 版中不再可用,除非您包含命令行中列出的设置。

工作扩展

【讨论】:

    猜你喜欢
    • 2013-08-21
    • 2017-06-16
    • 2021-08-01
    • 2015-02-26
    • 2012-01-20
    • 2016-12-28
    • 1970-01-01
    • 2021-06-22
    相关资源
    最近更新 更多