【问题标题】:How to access Camera and Microphone in Chrome without HTTPS?如何在没有 HTTPS 的情况下在 Chrome 中访问相机和麦克风?
【发布时间】:2018-10-11 12:22:49
【问题描述】:

当网站是http时,有什么方法可以使用chrome访问麦克风和相机?

我尝试启用 “不安全的来源被视为安全” 标志,但是当浏览器关闭并再次打开时,此标志中使用的域消失了,我必须重新输入并重新启用它.

我也尝试使用 "--unsafely-treat-insecure-origin-as-secure=http://example.com" 参数启动 chrome,但是当使用此参数时,Chrome 上会出现一条消息说

您正在使用不受支持的命令行 标志:--unsafely-treat-insecure-origin-as-secure=http://example.com。 稳定性和安全性将受到影响

我不想让消息出现,所以我也不能使用这种技术。

有没有其他方法可以访问麦克风和摄像头而不会收到任何警告? (我正在使用 WebRTC 访问设备)。

【问题讨论】:

  • 我能够在我的桌面上保留该设置,但在移动设备上,我遇到了与您报告的相同的问题。你在用手机吗?

标签: google-chrome webrtc


【解决方案1】:

这对我有用。虽然它仅用于测试目的。

要忽略 Chrome 的安全来源政策,请按以下步骤操作。 在 Chrome 中导航到 chrome://flags/#unsafely-treat-insecure-origin-as-secure

找到并启用Insecure origins treated as secure 部分(见下文)。 添加您想要忽略其安全源策略的任何地址。记住也要包括端口号(如果需要)。 保存并重新启动 Chrome。

请记住,这仅用于开发目的。实时工作应用需要托管在 https 上,用户才能使用他们的麦克风或摄像头。

"unsafely-treat-insecure-origin-as-secure" flag is not working on Chrome

【讨论】:

    【解决方案2】:

    在 Chrome 47+ 版本之后,您不能在 http 上运行 webrtc,但您可以通过对 ngnix.cong 文件进行一些更改来解决此问题,如

    //Make necessary changes
    server {
            listen 8080;
            server_name localhost;
            location / {
                proxy_pass         http://your.dev.box.ip:8080;
            }
        }
    

    参考:https://webrtchacks.com/chrome-secure-origin-https/

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-11-15
      • 1970-01-01
      • 2018-06-08
      • 2013-07-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多