javascript - 为什么 navigator.mediaDevices 在本地主机和服务器中的工作方式不同?

标签 javascript browser

我目前正在开发一个视频聊天项目。它使用navigator.mediaDevies。它工作正常并返回本地主机中的 MediaDevices 对象,但是当我将项目部署到服务器时,它返回未定义。我使用的是谷歌浏览器 v77。当然,本地主机和服务器中的浏览器都是相同的。 navigator.mediaDevices 如何工作?我认为它应该在同一个浏览器中返回相同的结果。但它在本地主机和生产服务器中的工作方式不同。我应该怎么做才能使 navigator.mediaDevices 在服务器中返回 MediaDevices 对象? (尝试过 Mozilla Firefox,但也不起作用)

最佳答案

在本地主机上,浏览器允许减少安全措施。特别是,不需要 HTTPS。

对于任何其他来源,需要 HTTPS 才能使用媒体设备 API。如果您检查开发者控制台,您无疑会看到显示此内容的错误。

关于javascript - 为什么 navigator.mediaDevices 在本地主机和服务器中的工作方式不同?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58533341/

相关文章:

WPF:如何在弹出窗口中自动调整 Web 浏览器的大小?

javascript - 如何在javascript中修改realm中的现有记录

Javascript 插件设计模式,如 jQuery

javascript - 在 Braintree Payment v2 中,是否有像 'onSubmitEncryptForm' 这样的方法可以像以前的版本一样通过 ajax 提交付款表单?

browser - WebSocket key 如何工作?

c# - 如何将 '\' 更改为 '/'

javascript - 我的浏览器中的 Minifier js 导致变量已经被声明

javascript - 吊装和可变范围

javascript - 如何使用 goog.provide 和 goog.require 加载我自己的 js 模块?

ios - 你能在浏览器中创建一个深层链接以在 instagram 中打开 "share to story"吗?