what?chrome 会报错?你代码写错了把!
chrome 报错 navigator.mediaDevices is undefined
最近在开发一个摄像头项目(多人会议,需要摄像头~~)。然后同事的电脑调试好好的,到我这里就报错了,我的 chrome 版本一直都在最新的,为啥到我这反而还不兼容?
原来是以后的内容会越来越严格
chrome:想调用摄像头?可以啊,拿出你的https
证书给我瞧瞧
解决问题
毕竟不可能到处都有 https 证书把,总得本地调试把,localhost 域名总会有吧。于是发现了这么一篇文章:MediaDevices.getUserMedia` undefined 的问题
那么我自己也做个记录
解决方法 1
通过相应参数启动 Chrome
比如我们调试的链接是:http://example.com
。如果有多个网址,用,
隔开
--unsafely-treat-insecure-origin-as-secure="http://example.com"
加哪里呢?
注意前面有个空格
解决方法 2(比较推荐这个)
- chrom 下
打开 chrome://flags/#unsafely-treat-insecure-origin-as-secure
- 选 enabled
- 填写需要调试的 URL,多个 URL 以,隔开
- 完全重启 chrome 后起效(改了之后下面也会有个
relaunch
按钮)
重启后发现,就可以非https
调试了
- edge 下
毕竟现在 edge 和 chrome 内核一样了,所以操作方法一样,只是打开链接不同:edge://flags/#unsafely-treat-insecure-origin-as-secure
至此,问题就解决了,要想到线上使用,还是需要https
,现在没 https 寸步难行