部署站点后,我无权访问 navigator.mediaDevices。我该如何解决?

M.N*_*Nar 6 javascript web-deployment webrtc surge.sh

我目前正在尝试使用 WebRTC api 并让一切在本地运行。当我部署到时,surge.sh我失去了对该navigator.mediaDevices对象的访问权限。我该如何解决这个问题?

以下代码行是我遇到问题的地方。

const stream = await navigator.mediaDevices.getDisplayMedia({video: {mediaSource: 'screen'}});
Run Code Online (Sandbox Code Playgroud)

我收到以下错误消息:

TypeError: Cannot read property 'getDisplayMedia' of undefined
Run Code Online (Sandbox Code Playgroud)

jib*_*jib 6

你需要https。

navigator.mediaDevices目前仅在 Chrome 74、 Firefox 68和规范的 SecureContext 中可用,这意味着该对象将在不安全上下文 (http) 中丢失。