【发布时间】:2021-03-01 11:16:40
【问题描述】:
我希望有人可以帮助我处理我的电子邮件。
我正在尝试开发一个通过Web Bluetooth 与 Trovan LID-573ISO 袖珍阅读器交互的网站。我可以通过蓝牙连接到掌上阅读器,但是当我可以连接 RFID 标签时,掌上阅读器成功读取了标签,但它没有通过网络蓝牙发回 ID。如果我将便携式阅读器与我的 iPhone 配对并打开 Notes 应用程序并扫描标签,则标签会成功显示在 Notes 应用程序中。但我无法通过Web Bluetooth 代码实现此功能。
这是下面的代码。我正在我的 Windows 10 机器上的 Google Chrome 上对其进行测试。
function connect () {
navigator.bluetooth.requestDevice({
acceptAllDevices: true})
.then(device => device.gatt.connect())
.then(server => {
return server.getPrimaryService('9cae0f23-579e-4fde-87a9-bf39e664de8c');
})
.then(service => {
return service.getCharacteristic('200f8d51-2a33-4ef3-9e60-2d9c2c10adca');
})
.then(characteristic => {
return characteristic.startNotifications();
})
.then(characteristic => {
characteristic.addEventListener('characteristicvaluechanged', handleCharacteristicValueChanged);
log('characteristicvaluechanged started');
})
.catch(error => {
var ss = error;
console.log(error); });
}
function handleCharacteristicValueChanged(event) {
log('In handleCharacteristicValueChanged')
var value = event.target.value;
log('Received ' + value);
log('Received ' + event.target);
}
当我运行页面时,我可以通过蓝牙连接到设备,但是handleCharacteristicValueChanged代码在我连接到设备后被触发一次,并且不再触发。
这些是我可以看到的设备上的服务。
我需要的是当阅读器读取芯片时,它会通过蓝牙将 ID 发回。
我需要一些帮助! :(
【问题讨论】:
标签: javascript bluetooth bluetooth-gatt