Javascript 如何在未获得firefox摄像头使用许可的情况下运行webRTC
我有2页在我的项目。 我通过使用webRTC请求在第一页上使用摄像头的许可Javascript 如何在未获得firefox摄像头使用许可的情况下运行webRTC,javascript,jquery,google-chrome,firefox,webrtc,Javascript,Jquery,Google Chrome,Firefox,Webrtc,我有2页在我的项目。 我通过使用webRTC请求在第一页上使用摄像头的许可 navigator.getUserMedia = navigator.getUserMedia || navigator.webkitGetUserMedia || navigator.mozGetUserMedia || navigator.msGetUserMedia; window.URL = window.URL || window.webkitURL || window.mozURL || wind
navigator.getUserMedia = navigator.getUserMedia ||
navigator.webkitGetUserMedia || navigator.mozGetUserMedia || navigator.msGetUserMedia;
window.URL = window.URL || window.webkitURL || window.mozURL || window.msURL;
link_to_second_page != active
if (navigator.getUserMedia) {
// Accepted.
link_to_second_page = active
} else {
// Not accepted.
}
如果用户接受,则第二页的链接将变为活动链接。
第二个页面上有一个视频聊天,也就是使用webRTC。
问题是,在Chrome上,它工作得非常完美,因为它保存了“许可已接受”状态。但Firefox用户被要求获得两次许可。因为Firefox不保存“权限已接受”状态。
是否有任何方法可以在第一页请求一次cam权限,然后在第二页启动webRTC?说服用户在Firefox的权限提示中选择“始终共享”(假设
https
)。一旦他们做到这一点,它将像铬一样工作
Firefox在设计权限方面不太自由,不幸的是,如果没有用户对每次调用的同意,网页无法将非持久性权限从一个页面传送到另一个页面(甚至从同一页面上对getUserMedia
的一次调用传送到另一个页面)
假设你必须在第一页使用摄像头,我能想到的唯一其他选择就是通过重新填充DOM,以某种方式将两页重新设计为一页,或者从一个普通的iframe请求相机。由于开发人员在另一个问题中控制了最终系统,所以可能的复制不是真正的复制IMHO。不幸的是,你是对的。我不得不放弃它,我的firefox用户仍然有一些不便。))