[英]Video and audio permissions in JavaScript
我需要判斷一個人是否關閉了媒體彈出窗口或阻止了媒體彈出窗口
const [permissions, setPermissions] = useState(false)
const handleClick = () => {
setPermissions('pending');
navigator.getUserMedia({ video: true, audio: true }, stream => {
stream.getTracks().forEach(track => {
return setPermissions(track.enabled);
});
}, (error) => {
if(error ==='DOMException: Permission denied'){
setPermissions('denied')
}
if(error === 'DOMException: Permission dismissed'){
setPermissions('dismissed')
}
});
};
我嘗試使用返回的錯誤字符串,但它不起作用。 我需要能夠區分錯誤之間的區別。 有沒有人有這樣做的好方法? 謝謝!
您無法以任何確切的方式區分差異。 瀏覽器與 Javascript 代碼非常不合作,該代碼試圖訪問媒體設備但未獲得用戶的許可。 因為網絡蠕蟲。
我在這方面取得了一些成功,看看用戶是否拒絕訪問:
再試一次。 如果您立即(在幾秒鍾內)收到錯誤,他們可能已經拒絕訪問這些設備。 如果需要更長的時間,他們可能正在查看權限對話框的重復。
不是一個很好的情況。 特別是如果您想向用戶解釋如何返回 go 並取消拒絕權限。 但這是監控時代必不可少的隱私功能。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.