WebHID(Web人机交互设备)

WebHID(Web人机交互设备)是一种新的API,它允许Web开发人员直接从Web页面访问和控制HID(人机交互设备)。 HID设备包括游戏手柄、键盘和其他可用于与计算机交互的输入设备。使用WebHID API,开发人员可以创建基于浏览器的游戏和应用程序,并使用硬件输入设备进行交互。

WebHID API目前处于实验阶段,并不是所有的浏览器都支持它,但是可以在谷歌浏览器和Chromium的最新版本中使用。通过使用JavaScript来接口和像Gamepad API和webUSB API之类的API,WebHID API能够让开发者在网页上更好的管理硬件设备。

通过这个API,开发者能够创建更加丰富和直接的交互体验,在游戏中尤其如此,可以让玩家使用游戏手柄来控制游戏,这样能提高游戏的体验。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
// Request access to the keyboard
navigator.hid.requestDevice({ filters: [{ usagePage: 0x01, usage: 0x06 }] })
.then(device => {
console.log('Keyboard found:', device.productName);
// Connect to the keyboard
device.open();
// Listen for input events
device.addEventListener('input', event => {
console.log('Input event:', event);
});
})
.catch(error => {
console.log(error);
});

在这段代码中,我们使用 navigator.hid.requestDevice 方法来请求访问键盘。 filters 属性用于筛选出我们需要的键盘。在这种情况下,我们使用了一个滤波器来筛选出用于一般数据输入的键盘(使用页面 0x01,使用 0x06)。当设备被成功连接后,我们使用 device.open() 方法打开它,然后监听 ‘input’ 事件并将其输出到控制台。

请注意, 这段代码需要在https协议下或本地环境下才能运行


WebHID(Web人机交互设备)
http://example.com/2022/03/12/hello-world/
作者
Ben Chiu
发布于
2022年3月12日
许可协议