gpt4 book ai didi

google-chrome - WebUSB API 找不到兼容设备

转载 作者:行者123 更新时间:2023-12-05 04:50:28 27 4
gpt4 key购买 nike

我正在尝试通过网页(通过 HTTPS)访问我的 USB 设备。我的 USB 设备已启动并正在运行,并且还启用了实验性 Web 平台功能 chrome://flags/#enable-experimental-web-platform-features。即使我在代码中提供了正确的 vendorId 和 productId,chrome 也会显示消息“找不到兼容的设备”。我哪里错了?下面是我的代码

<!DOCTYPE html>
<html lang="en">
<head>
</head>
<body>
<button id="request-device">Request Device</button>
<script>
document.getElementById("request-device").addEventListener("click", ()=>{
navigator.usb.requestDevice({filters: [{vendorId: 0x03F0}, {productId: 0x5A07}]})
.then((usbDevice)=>{
console.log("product name: "+usbDevice.productName);
})
.catch((e)=>{
console.log("There is no devie...."+e);
});
});
</script>
</body>
</html>

最佳答案

设备可能不显示的原因有几个:

首先是 Chrome 没有检测到设备已连接。 Chrome 在 chrome://device-log 中记录它发现的每个 USB 设备。检查是否已检测到您的设备。它还将在 chrome://usb-internals 的“设备”选项卡中提供详细的设备信息。

另一个原因是 Chrome 可能隐藏了设备,因为它没有实现允许网站使用 WebUSB API 声明的任何接口(interface)。例如,如果设备是 USB 大容量存储设备,则该接口(interface)不可声明,如果没有其他接口(interface),则该设备将被隐藏。由于 Chrome 90 的一个错误,如果设备没有接口(interface),它也不会出现。这将在 Chrome 91 中修复,您可以在最新的测试版 channel 更新中验证该修复。

关于google-chrome - WebUSB API 找不到兼容设备,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67253699/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com