前端可借助浏览器的 Web Bluetooth API,使用 JavaScript 操作蓝牙设备,实现硬件交互。
核心调用与基本流程
浏览器支持情况适用场景
在多种业务场景中实用,包括智能穿戴设备数据采集(如体温计、血压仪)、蓝牙打印(票据机、标签机)、教育 / 实验室设备数据读取以及开发 / 调试 BLE 硬件模块等。
限制与注意事项
需用户手动选择设备,不可自动偷偷连接。仅支持 BLE 设备,传统蓝牙设备无法操作。Safari 不支持,iPhone 无缘使用。必须在 HTTPS 环境或 localhost 下使用。
支持平台:Chrome(PC 和 Android)、Edge 支持 Web Bluetooth。
不支持平台:Safari(iOS)和 Firefox 不支持,iPhone 暂时无法使用。
环境要求:必须在 HTTPS 页面或 localhost 上调用才生效。
核心方法:通过浏览器原生方法 navigator.bluetooth.requestDevice() 弹出蓝牙设备选择窗口,由用户手动连接。通信流程:共分 5 步,分别是请求设备(触发选择窗口)、连接设备(建立 GATT 连接)、获取服务(根据 UUID 获取蓝牙服务)、获取特征值(用于读写的特征)、读写数据(读取或订阅设备数据)。
例如一段简化代码可实现连接蓝牙设备并读取电池电量:先请求设备,再依次建立连接、获取服务和特征值,最后读取电量并输出。