Chrome 中的网络摄像头 js 错误:无法访问网络摄像头
Webcam js Error in Chrome: Could not access webcam
我在我的一个项目中使用 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 中正常工作。
对于此类问题,还有另一种方法在开发过程中对我有所帮助,可能对其他人也有帮助。解决方法是将GoogleChrome的版本降级到46.
基本步骤如下:
- 在 Google Chrome
中关闭更新
转到 C:\Program Files\Google\Chrome\Application 或浏览器的安装目录。
您会发现 2 个不同的文件:chrome.exe 和 old_chrome.exe。将 chrome.exe 重命名为任何其他名称,然后将 old_chrome.exe 重命名为 chrome.exe
启动GoogleChrome
您可以在此处找到更详细的说明:http://ipswitchft.force.com/kb/articles/FAQ/How-to-downgrade-to-an-Older-version-of-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 }]
});
您可以允许特定站点或端口:
要忽略 Chrome 的安全来源政策,请按照以下步骤操作。
导航至 Chrome 中的 chrome://flags/#unsafely-treat-insecure-origin-as-secure
。
找到并启用 Insecure origins treated as secure
部分(见下文)。
添加您要忽略其安全来源策略的任何地址。请记住也包括端口号(如果需要)。
保存并重启Chrome.
我也遇到了这个错误。
解决方案:
确保您的网站是安全的。通过 https
协议访问它。
示例:
使用
https://example.azurewebsites.net/
而不是
http://example.azurewebsites.net/
我在我的一个项目中使用 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 中正常工作。
对于此类问题,还有另一种方法在开发过程中对我有所帮助,可能对其他人也有帮助。解决方法是将GoogleChrome的版本降级到46.
基本步骤如下: - 在 Google Chrome
中关闭更新转到 C:\Program Files\Google\Chrome\Application 或浏览器的安装目录。
您会发现 2 个不同的文件:chrome.exe 和 old_chrome.exe。将 chrome.exe 重命名为任何其他名称,然后将 old_chrome.exe 重命名为 chrome.exe
启动GoogleChrome
您可以在此处找到更详细的说明:http://ipswitchft.force.com/kb/articles/FAQ/How-to-downgrade-to-an-Older-version-of-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 }]
});
您可以允许特定站点或端口:
要忽略 Chrome 的安全来源政策,请按照以下步骤操作。
导航至 Chrome 中的
chrome://flags/#unsafely-treat-insecure-origin-as-secure
。找到并启用
Insecure origins treated as secure
部分(见下文)。添加您要忽略其安全来源策略的任何地址。请记住也包括端口号(如果需要)。
保存并重启Chrome.
我也遇到了这个错误。
解决方案:
确保您的网站是安全的。通过 https
协议访问它。
示例:
使用
https://example.azurewebsites.net/
而不是
http://example.azurewebsites.net/