繁体   English   中英

Chrome 中的网络摄像头 js 错误:无法访问网络摄像头

[英]Webcam js Error in Chrome: Could not access webcam

我在我的一个项目中使用网络摄像头 JS。

https://github.com/jhuckaby/webcamjs

我使用的版本:1.0.0 可用的最新版本:1.0.5

它在 Chrome 和 Firefox 中运行良好。 但最近网络摄像头错误开始仅在 CHROME 中显示。 Firefox 仍然可以正常工作。

我在 1.0.0 中收到的Webcam.JS Error: cannot access webcam.

我升级了版本,现在我在 chrome 中遇到的错误是

Webcam.js Error: Could not access webcam.
Permission Error: Only secure origins are allowed

https://www.chromium.org/Home/chromium-security/prefer-secure-origins-for-powerful-new-features

我的网站有一个安全的来源。

谁能告诉我为什么我会面临这样的错误?

我相信复制粘贴 webcam.js 代码没有意义。

这是我使用的代码:

Webcam.set({
      width: 320,
     height: 240,
     dest_width: 320,
     dest_height: 240,
     image_format: 'jpeg',
     jpeg_quality: 90,
     force_flash: false
    });
    Webcam.attach( '#my_camera' );

Chrome 47 要求网站是 HTTPS 以便用户媒体/网络摄像头工作! 这是一个全新的要求,我没有看到......

有关该主题的 Chromium 文档: https : //www.chromium.org/Home/chromium-security/prefer-secure-origins-for-powerful-new-features

这意味着我必须购买 SSL 证书。 只要您在 127.0.0.1 或 HTTPS 上使用该库,该库在 Chrome 47 中应该可以正常工作。

问题讨论

解决方案

您可以允许特定站点或端口:

要忽略 Chrome 的安全来源政策,请按照以下步骤操作。

  • chrome://flags/#unsafely-treat-insecure-origin-as-secure导航到chrome://flags/#unsafely-treat-insecure-origin-as-secure

  • 查找并启用Insecure origins treated as secureInsecure origins treated as secure部分(见下文)。

  • 添加要忽略其安全源策略的任何地址。 请记住也包括端口号(如果需要)。

  • 保存并重新启动 Chrome。

看这里!

如果您还不能提供安全连接,您所能做的就是使用后备闪存。 使用该库中的配置代码:

 Webcam.set({
        force_flash: true
 });
Webcam.set({
    width: 500,
    height: 400,
    image_format: "jpeg",
    jpeg_quality: 90,
    force_flash: false,
    flip_horiz: true,
    fps: 45
});

Webcam.set("constraints", {
    optional: [{ minWidth: 600 }]
});

我也收到了这个错误。

解决方案:

确保您的网站是安全的。 通过https协议访问它。

例子:

采用

https://example.azurewebsites.net/ 

代替

http://example.azurewebsites.net/

对于此类问题,还有另一种方法可以在开发过程中帮助我,并且可能对其他人有所帮助。 解决方案是将 Google Chrome 的版本降级到 46 次。

以下是基本步骤: - 关闭 Google Chrome 中的更新

  • 转到 C:\\Program Files\\Google\\Chrome\\Application 或浏览器的安装目录。

  • 您会在那里找到 2 个不同的文件:chrome.exe 和 old_chrome.exe。 将 chrome.exe 重命名为任何其他名称,然后将 old_chrome.exe 重命名为 chrome.exe

  • 启动谷歌浏览器

您可以在此处找到更详细的说明: http : //ipswitchft.force.com/kb/articles/FAQ/How-to-downgrade-to-an-Older-version-of-Chrome

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM