Javascript 使用ip:port时getUserMedia未定义

Javascript 使用ip:port时getUserMedia未定义,javascript,Javascript,我想知道为什么当我使用IP:port时getUserMedia是未定义的,在localhost:port中它工作得很好 有什么想法吗 我的测试是在js纯运行watch http server来启动本地服务器,但是如果我使用其他http服务器作为示例lite服务器,我会遇到同样的问题 问题就在这里 我使用Chrome和Firefox const stream=wait navigator.mediaDevices.getUserMedia({音频:false,视频:true}) 本地主机正常 ip

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

有什么想法吗

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

问题就在这里

我使用Chrome和Firefox

const stream=wait navigator.mediaDevices.getUserMedia({音频:false,视频:true})

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

编辑

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

这是github上的代码

只需运行npm安装和npm运行

在本地主机上试用后和使用ip后,请参见:

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


因此,当您使用
localhost
时,它会起作用,因为这被认为是一种安全上下文,但某些任意IP地址不是,除非您也使用HTTPS。

欢迎使用!透露您的浏览器名称和版本可能会有助于其他人提供帮助。如果可能的话,你应该附加最少的测试代码,以便人们能够复制你的问题并测试他们的提案。如果你使用的是iOS和Safari,那可能是因为HTTPS的运气。