一旦被拒绝,我们如何使用getUserMedia()请求摄像头/麦克风访问?
我正在使用getUserMedia访问用户的摄像头并将数据传输到画布.这一切都很好.
在测试中,我打了一次否认.此时在Chrome和Firefox中,任何带有getUserMedia()的后续请求都默认为拒绝状态.
我们显然不希望通过在拒绝后的每个页面加载上请求相机/麦克风的权限来惹恼我们的用户.对地理位置api来说已经足够烦人了.
但是,必须有一种方法再次请求它.仅仅因为用户点击拒绝一次并不意味着他们想要一直拒绝网络摄像头访问.
我一直在阅读有关规范和谷歌搜索一段时间,但我没有找到任何明确的问题.
编辑:进一步研究,似乎在Chrome中点击Deny会将当前网站添加到阻止列表中.这可以通过chrome:// settings/content手动访问.滚动到媒体.管理例外,删除被阻止的网站.
链接到chrome:// settings/content不起作用(在我们想要添加有用链接以让人们重新启用权限的情况下).
用于处理getUserMedia周围权限的整个UX很糟糕.=(
我从这个链接克隆了一个关于Web浏览器上实时图像处理的项目:然后我无法允许我的浏览器访问我的相机.我收到了这个javascript警报:
呃哦,网络摄像头没有启动.你有网络摄像头吗?你给了它许可吗?刷新再试一次.并且不显示允许按钮,就像我访问他的网站一样.