原因:通过 navigator.MediaDevices.getUserMedia() 获取用户多媒体权限时,需要注意其只工作于以下三种环境:
localhost
域- 开启了 HTTPS 的域
- 使用
file:///
协议打开的本地文件
其他情况下,比如在一个 HTTP
站点上,navigator.mediaDevices
的值为 undefined
。
如果想要 HTTP
环境下也能使用和调试 MediaDevices.getUserMedia()
,可通过开启 Chrome 的相应参数。
右键浏览器属性在目标一栏后面加: --unsafely-treat-insecure-origin-as-secure="http://example.com"
注意:--最前面有一个空格
http://example.com为需要录屏屏幕的ip,我的为http://192.168.80.91:5003/#/login