Я занимаюсь разработкой бота, и мне нужно открыть камеру в WebView.Оказывается, я не могу открыть камеру со следующей ошибкой (в настольном Chrome):
Разрешение VideoCapture было заблокировано из-за политики компонентов, примененной к текущему документу.
Я использую следующий код для запроса разрешений:
const constraints = {
advanced: [{
facingMode: "environment"
}]
};
navigator.mediaDevices
.getUserMedia({
video: constraints
}).catch(error => {
view.handlePermissionError(error);
})
.then(stream => {
console.log('Permission success');
this.videoBlock.src = window.URL.createObjectURL(stream);
this.videoBlock.width = document.body.clientWidth;
this.videoBlock.height = document.body.clientHeight;
this.canvas.width = document.body.clientWidth;
this.canvas.height = this.videoBlock.videoHeight;
this.setOkDimensions();
this.videoBlock.play();
});
Видимо, аналогичная ошибка блокирует его в Messenger на мобильном телефоне.
Есть ли способбезопасно запросить разрешение в мессенджере бота iframe?
РЕДАКТИРОВАТЬ: Iframe открывается с HTTPS