🧠 一、为什么会被 Chrome 屏蔽
Chrome 出于安全策略,会在以下几种情况自动禁用权限:
情况 | 说明 |
---|---|
❌ 网站不是 HTTPS | Chrome 认为 HTTP 不安全,会默认禁用 getUserMedia() (音视频访问) |
❌ 用户手动点击了"禁止使用麦克风" | 浏览器会永久记住这个选择(需手动解锁) |
❌ 浏览器的全局麦克风权限关闭 | 在系统或浏览器设置层面被禁用 |
❌ "隐私模式"或企业管理策略禁止访问 | 某些公司或系统策略会禁用麦克风/摄像头 API |
⚠️ 之前有错误或崩溃 | Chrome 可能自动屏蔽掉同源请求直到重新授权 |
这时候 Chrome 默认会 强制屏蔽麦克风、摄像头、语音识别 API ,
因为它认为 http://IP
是"不安全来源(insecure origin)"。

✅ 解决方法(局域网专用方案)
你有两种可行方案,不需要图形界面,也不用证书。
🥇 方法 1:在客户端电脑的 Chrome 中"强制允许不安全来源使用麦克风"
Chrome 有一个隐藏开关,可以让指定的 IP 地址 在 HTTP 下也能访问麦克风/摄像头。
操作步骤:
-
打开 Chrome(在你访问前端的那台电脑上);
-
在地址栏输入:
chrome://flags/#unsafely-treat-insecure-origin-as-secure
-
找到这一项:
Insecure origins treated as secure
-
在下面的文本框里填入你的服务器地址,例如:
http://188.18.18.149:8010
-
右侧改为
Enabled
; -
点击右下角 "Relaunch" 重启 Chrome;
-
再访问你的站点,就能正常使用麦克风/摄像头了。
🔒 原理:
这会让 Chrome 把该 HTTP 地址"伪装成安全来源(secure origin)",
这样 navigator.mediaDevices.getUserMedia()
就不会再被屏蔽。

现在就可以更改网站录音,摄像头和位置权限了

