chrome谷歌浏览器http协议打开摄像头
BS项目有人脸采集,拍照的功能,人脸采集是使用trackingjs,也是使用的H5的UserMedia技术,开发时使用127.0.0.1本机地址是可以正常调用摄像头,部署后通过服务器IP访问调用摄像头报错Cannot read properties of undefined (reading ‘getUserMedia’)。
我的谷歌浏览器是102较高版本,由于谷歌限制, 在http协议下没权限调用摄像头,除非本地IP访问自己本地启动的服务。
谷歌为什么要限制肯定是出于安全考虑,如果随意访问互联网的一个网站,结果网站中js代码直接唤起我们电脑的摄像头拍摄,隐私都没了。
调用摄像头js报错如下
com.bsoft.components.doctorCall.doctorCall,com.bsoft.base.tracking-min,com.bsoft.base.face-min.jsc:97 Uncaught TypeError: Cannot read properties of undefined (reading ‘getUserMedia’)
解决方案
1.升级https协议
配置HTTPS协议后谷歌认为这个网站是正常的,允许调用摄像头。