如何在不用 https 的情况下使用 WebRTC?

2022-01-24 11:14:37 +08:00
 idealhs

目前在内网里面搭了一个 NextCloud ,想要使用基于 WebRTC 的 NextCloud Talk
因为没有打算开放到公网上,所以协议走的一直都是 http ,也不打算用自签名证书。
但是这就带来了一个问题:WebRTC 除了访问 localhost ,要求全部使用 https 。不然浏览器会阻止网页使用麦克风和摄像头。
Google 后发现 Chrome 有一个 workaround ,就是在启动项里面配置一个--unsafely-treat-insecure-origin-as-secure 来忽略这个限制。虽然不完美但是确实可以用。
想问问大家,Firefox 和 Chrome 中有没有什么地方可以配置这个东西,让我可以永久的忽视这个安全策略,通过 http 可以访问到麦克风和摄像头权限?
谢谢各位彦祖

1739 次点击
所在节点    问与答
9 条回复
hhjuteman
2022-01-24 11:25:16 +08:00
除了你这个方法几乎没有了,这里的限制是加在 getUserMedia 这个函数上的。也许降级 Chrome 的版本到 46 之前有用?我不记得是不是 46 了。
codehz
2022-01-24 12:30:36 +08:00
Chrome 倒是可以在 flags 里改
chrome://flags/#unsafely-treat-insecure-origin-as-secure
idealhs
2022-01-24 13:36:10 +08:00
@hhjuteman @codehz 感谢老哥们,自己主力用 firefox ,希望 firefox 能有类似的设置方案就好了
hronro
2022-01-24 14:34:29 +08:00
还有个方法 ,在 localhost 上做端口转发,这样对浏览器就没有特定的要求了
idealhs
2022-01-24 15:35:37 +08:00
@hronro 也是一个方案,感谢
ysc3839
2022-01-24 21:26:31 +08:00
用自签名证书,然后手动信任也是可以的。再者,申请一个受信任的证书也不麻烦
idealhs
2022-01-25 10:04:02 +08:00
@ysc3839 申请证书是要域名的,我这是内网服务
tuduweb
2022-01-25 10:50:14 +08:00
自签名证书
ysc3839
2022-01-25 12:47:49 +08:00
@idealhs 有免费域名

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/830227

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX