在移动设备上获得对 Localhost 上的 getUserMedia 对象的访问权限 phone

Gain access to getUserMedia object on Localhost on mobile phone

我正在测试 webrtc 实现。我目前可以在台​​式计算机上访问 navigator.mediaDevices.getUserMedia。然而,当我 在我的手机 phone 上使用我的计算机 IP 地址打开我的 localHost,我得到 一条消息说 navigator.mediaDevices.getUserMedia 未定义。

在我的电脑上,我导航到: http://127.0.0.1:3000/basic-p2p/#8922097 (这有效并允许我访问我的视频流)

在我的手机上 phone 我导航到:

http://<my ip address>:3000/basic-p2p/#8922097

(这会在我的手机上打开 webapp phone,但导航器对象未定义)

http://127.0.0.1:3000/basic-p2p/#8922097

(这不会在我的手机上打开网络应用程序 phone,我只是将其包含在内)

我得到的具体错误是:

Cannot read properties of undefined (reading 'getUserMedia')

我看到它可以在我计算机上的本地主机上的 http: 上运行,但是当 我切换到在我的计算机或 phone 上使用我的 IP 地址。请帮忙, 我怎样才能让我的手机 phone 访问 navigator.mediaDevices.getUserMedia 同时 仍在测试开发中?

如果有帮助的话,这就是当我切换到使用我的计算机 IP 地址访问本地主机时出现的行。

      navigator.mediaDevices.getUserMedia({ audio: true, video: false}).then(stream => {
          localVideo.current.srcObject = stream
          userStream.current = stream

http 仅适用于本地主机或 127.0.0.1,要访问 video/camera 提要,您需要 https。

从上面的描述来看,我假设您只是使用 html 带有视频脚本的页面。 问题:您是否尝试从手机访问桌面摄像头。