当我使用ip:port时,getUserMedia未定义



我想知道为什么当我使用IP:port时,getUserMedia是未定义的,在localhost:port中,它运行得很好

有什么想法吗?

我的测试是在js中纯运行watchhttp服务器到本地服务器,但如果我使用其他http服务器作为示例lite服务器,我也会遇到同样的问题

问题在这里

我使用Chrome和Firefox

const stream=等待navigator.mediaDevices.getUserMedia({audio:false,video:true}(;

本地主机正常ip找不到navigator.me***

编辑

/*****************************************************************************/

这是github上的代码https://github.com/VictorBarbosa/stackoverflowhelp

只需运行npm安装和npm运行

在本地主机上尝试后,在使用ip 后

参见MDN:

getUserMedia((是一个强大的功能,只能在安全上下文中使用;在不安全的上下文中,navigator.mediaDevices未定义,因此无法访问getUserMedia((。简而言之,安全上下文是使用HTTPS或file:///URL方案加载的页面,或者是从localhost加载的页面。

因此,当您使用localhost时,它是有效的,因为它被认为是一个安全的上下文,但除非您也使用HTTPS,否则某些任意IP地址是无效的。

相关内容

最新更新