TypeError: Cannot read property ‘getUserMedia’ of undefined

背景:

在调试网页录音的功能时,出现了如下报错信息

解决办法:

原因: 如果当前文档未安全加载, navigator.mediaDevices将是undefined,并且您不能使用 getUserMedia(). 见详情,以了解本与使用其他安全问题的详细信息getUserMedia()

chrome下获取浏览器录音功能,因为安全性问题,需要在localhost或127.0.0.1或https下才能获取权限

方式一:网页使用https访问

此操作需要依赖web服务提供者实现https的访问方式。

方式二:使用 localhost或127.0.0.1 进行访问

方式三: 修改浏览器安全配置(最直接、简单)

1、首先在chrome浏览器中输入如下指令

 chrome://flags/#unsafely-treat-insecure-origin-as-secure 

2、然后开启 Insecure origins treated as secure

在下方输入栏内输入你访问的地址url,然后将右侧Disabled 改成 Enabled即可

3、然后浏览器会提示重启, 点击Relaunch即可

4、然后就可以调用getUserMedia()了

如果觉得文章有帮助到你,可以扫描以下二维码
   请本文作者 喝一杯
pay_weixin pay_weixin

“TypeError: Cannot read property ‘getUserMedia’ of undefined”的2个回复

发表评论

电子邮件地址不会被公开。 必填项已用*标注