WebUSB getDevices 空列表

WebUSB getDevices empty list

运行 Chrome Windows 10 PRO 版本 1511(OS 内部版本 10586.753)上的 56.0.2924.76(64 位)。已在 chrome、运行 上启用实验性网络平台功能并使用标志 --disable-webusb-security 并以管理员身份启用。我尝试使用 getDevices 在本地主机(使用 https)上获取 USB 设备列表,但我得到的是空列表,尽管 chrome://device-log 向我显示了大量设备。可能是什么问题?

navigator.usb.getDevices().then(function(devices){
    console.log(devices);
});
// console outputs []

您应该先使用 requestDevice() 以获得对选定设备的访问权限。

navigator.usb.requestDevice({filters:[]}).then(function(device){
   console.log(device);
});

之后您就可以调用 getDevices()