javascript - 为什么 getUserMedia() 在 chrome 中显示权限被拒绝错误

标签 javascript angularjs google-chrome permission-denied getusermedia

我在 node.js 和 Angular 项目 (MEAN) 中使用 getUserMedia() 进行视频流传输。我的<video>标记在部分文件中。该项目在本地服务器的 Google Chrome、Opera 和 Firefox 中运行流畅且兼容。但是当我尝试使用 Google Chrome 在 Ubuntu 服务器上运行它时(只有 Chrome 有问题),视频没有显示。
控制台错误详情如下:

(程序):84 navigator.getUserMedia 错误:PermissionDeniedError(错误名称)

我正在使用 chrome 版本 47.0.2526.80。我正在为这个项目使用 http。我还收到警告,要求将我的应用程序切换到安全来源,例如 HTTPS。为什么它不能在 Chrome 中正常运行。

最佳答案

Google Chrome 已停止支持 getUserMedia() 以及一些其他功能,如 GeolocationFullscreen 等不安全来源。我认为它允许本地主机使用这些功能以启用测试,但它们不能在实际服务器上运行。

这是谷歌的相关公告:

https://sites.google.com/a/chromium.org/dev/Home/chromium-security/deprecating-powerful-features-on-insecure-origins

关于javascript - 为什么 getUserMedia() 在 chrome 中显示权限被拒绝错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34178100/

相关文章:

javascript - 通过 AJAX 无形式上传图像

javascript - Angular JS REST API GET 不显示数据

google-chrome - HTML5 日期输入接受无效日期?

android - Android 版 Chrome 上的本地文件访问

google-chrome - 停止 Chrome 标签页 sleep /休眠

javascript - 使用 ngmap 的绘制模式显示现有多边形

javascript - 未定义 ParticleJS

javascript - 在javascript中创建的Audio()对象上显示控件

angularjs - 在ajax请求和 session 超时期间,Grails没有响应401

javascript - Angularjs:HTML DOM 未更新