可通过四种方式屏蔽gamepad api:一、在chrome://flags中禁用gamepad api并重启;二、启用restrict gamepad access仅允https调用;三、在网站设置中单独阻止特定站点的手柄权限;四、安装扩展程序重写api行为。

如果您在使用谷歌浏览器时希望阻止网页调用Gamepad API以防止手柄被意外识别或数据被读取,则可能是由于隐私控制需求、避免游戏自动激活手柄输入,或防止非HTTPS页面滥用硬件接口所致。以下是实现Gamepad API屏蔽的具体操作步骤:
一、通过Chrome Flags禁用Gamepad API
Chrome Flags提供实验性功能开关,可直接关闭底层Gamepad API支持,使所有网页无法检测到连接的手柄设备。该方式为全局禁用,生效后无需额外权限设置。
1、在Chrome地址栏输入chrome://flags并回车访问Flags配置页。
2、在页面顶部搜索框中键入gamepad,定位到“Gamepad API”和“Enable gamepad extensions”两项。
3、将“Gamepad API”选项从Default改为Disabled;若存在“Enable gamepad extensions”,同样设为Disabled。
4、点击右下角“Relaunch”按钮重启浏览器,重启后API即完全不可用。

二、启用Restrict gamepad access限制非HTTPS网站访问
该标志不完全禁用API,而是强制仅允许通过HTTPS协议加载的网页调用Gamepad API,HTTP页面将被静默拒绝。此方式保留安全站点的手柄功能,同时阻断不安全来源的访问请求。
1、访问chrome://flags,在搜索框中输入Restrict gamepad access。
2、将该选项状态由Default改为Enabled。
3、点击“Relaunch”重启浏览器。
4、此后访问http://开头的网页时,即使手柄已连接且API启用,控制台将显示SecurityError且无任何设备枚举结果。

三、通过网站权限单独屏蔽特定站点
若仅需阻止CrazyGames等特定平台使用手柄,可保留全局API启用状态,仅对该域名撤销硬件访问授权。此方法不影响其他支持手柄的合法HTTPS游戏站点。
1、访问目标网站(如https://www.crazygames.com),确保页面已完全加载。
2、点击地址栏左侧锁形图标,选择“网站设置”。
3、向下滚动至“权限”区域,找到“游戏手柄输入”(Gamepad input)选项。
4、将其状态由“允许”更改为阻止。
5、关闭并重新打开该网页标签页,此时JavaScript调用navigator.getGamepads()将始终返回空数组。

四、使用扩展程序拦截Gamepad API调用
部分浏览器扩展可通过注入内容脚本重写全局Gamepad API行为,使其返回null或空对象,从而实现细粒度屏蔽。该方法无需修改浏览器核心设置,适合临时调试或按需启用场景。
1、前往Chrome网上应用店,搜索并安装经验证的API屏蔽类扩展,例如“Disable Gamepad API”或“Web API Blocker”。
2、安装后点击扩展图标,进入设置界面,勾选“Block navigator.getGamepads”及“Block window.GamepadEvent”选项。
3、在扩展弹出菜单中选择“仅对当前网站生效”或“对所有网站生效”。
4、刷新当前页面,控制台执行console.log(navigator.getGamepads())将输出null而非GamepadList对象。
大量免费API接口:立即使用
涵盖生活服务API、金融科技API、企业工商API、等相关的API接口服务。免费API接口可安全、合规地连接上下游,为数据API应用能力赋能!











