如何检查getUserMedia()中发生的错误?



我正在检查用户是否有相机。

MediaDevices.getUserMedia()文档说有两种可能的错误:SecurityErrorNotFoundError

是否有一种方法可以检测出两者中的哪一个发生了,并为每一个做单独的事情?

navigator.mediaDevices.getUserMedia({
video: true
})
.then(function() {
//do something
})
.catch(function(error) {
//if error = security error, do something
//if error = camera not found, do something else
});

编辑

可能不是最好的方法,但它适合我:

navigator.mediaDevices.getUserMedia({
video: true
})
.then(function() {
//do stuff
})
.catch(function(error) {
if(error.message.includes("Requested device not found")) //do stuff
else if(error.message.includes("Permission denied")) //do other stuff
});

我认为这不是正确的方法,但它可以工作。

if(error.includes("something from security error message"){
//do something about security
} else if(error.includes("something from camera error message"){
//do something about camera
}

错误可以是不同的类型(对象、字符串)。

相关内容

  • 没有找到相关文章

最新更新