javascript - WebRTC,浏览器不要求使用摄像头和麦克风的许可 - 但在本地它会

标签 javascript html google-chrome webrtc

我正在测试 https://codelabs.developers.google.com/codelabs/webrtc-web/#8我的浏览器在本地请求使用摄像头和麦克风的权限 - 一切正常。

当我将代码上传到真实域上的服务器时,我的浏览器不请求权限,我从 getUserMedia() 收到权限被拒绝的错误。

我怎样才能避免这种情况?

我正在 Google Chrome 中进行测试,但希望修复程序适用于 Chrome、Firefox 和 Opera(因为它们支持 WebRTC)。

最佳答案

您没有使用 HTTPS 吧?

请记住,最新的炫酷玩具仅适用于从安全来源加载的网站。 Localhost 只是一个异常(exception)。

如果您认为实现 HTTPS 很麻烦或者很昂贵,那么看看 Cloudlflare,0.00 美元的反向代理和免费的 Comodo HTTPS 证书。

或者试试这个免费的认证机构https://letsencrypt.org/

一个月前,我在巴黎的一次安全 session 上与该项目的负责人交谈,他解释说他们唯一不支持的是通配符证书。这对您来说应该不是问题。除非你想在你的内容交付网络中使用你自己的域的 HTTPS。

关于浏览器兼容性,检查这个线程:

https://community.letsencrypt.org/t/which-browsers-and-operating-systems-support-lets-encrypt/4394

关于javascript - WebRTC,浏览器不要求使用摄像头和麦克风的许可 - 但在本地它会,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37545295/

相关文章:

php - 一段时间后自动刷新 JavaScript 功能停止工作

javascript - 测试对象是否是 javascript 中的 jQuery 对象的正确/正确方法是什么?

javascript - 等待 HTML5 规范的稳定状态

Javascript slider 抖动

pdf - 在Chrome中打开本地PDF文件

javascript - 在 document.write() 之前获取文档 HTML;

javascript - 移动 View 中的标题 chop

javascript - Wordpress TinyMCE 去除 OnClick 和 OnChange(需要 jQuery)

javascript - 如何使用 Chrome Extension API 获取网页的所有 HTTP 请求

jquery - 有没有办法在 jquery 中为 cookie 添加相同的站点值?