Web Bluetooth API

Limited availability

This feature is not Baseline because it does not work in some of the most widely-used browsers.

Experimentell: Dies ist eine experimentelle Technologie
Überprüfen Sie die Browser-Kompatibilitätstabelle sorgfältig vor der Verwendung auf produktiven Webseiten.

Die Web Bluetooth API bietet die Möglichkeit, eine Verbindung zu Bluetooth Low Energy-Peripheriegeräten herzustellen und mit ihnen zu interagieren.

Hinweis: Diese API ist nicht verfügbar in Web Workers (nicht zugänglich über WorkerNavigator).

Schnittstellen

Bluetooth

Bietet Methoden zum Abfragen der Bluetooth-Verfügbarkeit und zum Anfordern des Zugriffs auf Geräte.

BluetoothCharacteristicProperties

Bietet Eigenschaften eines bestimmten BluetoothRemoteGATTCharacteristic.

BluetoothDevice

Repräsentiert ein Bluetooth-Gerät innerhalb einer bestimmten Skriptausführungsumgebung.

BluetoothRemoteGATTCharacteristic

Repräsentiert ein GATT-Charakteristikum, das ein grundlegendes Datenelement darstellt und weitere Informationen über einen Dienst eines Peripheriegeräts bietet.

BluetoothRemoteGATTDescriptor

Repräsentiert einen GATT-Deskriptor, der weitere Informationen über den Wert eines Charakteristikums bietet.

BluetoothRemoteGATTServer

Repräsentiert einen GATT-Server auf einem externen Gerät.

BluetoothRemoteGATTService

Repräsentiert einen Dienst, der von einem GATT-Server bereitgestellt wird, einschließlich eines Geräts, einer Liste von referenzierten Diensten und einer Liste der Charakteristika dieses Dienstes.

Erweiterungen zu anderen Schnittstellen

Die Bluetooth API erweitert die folgenden APIs und fügt die aufgelisteten Funktionen hinzu.

Gibt ein Bluetooth-Objekt für das aktuelle Dokument zurück, das Zugriff auf die Funktionen der Web Bluetooth API bietet.

Sicherheitsüberlegungen

Die Web Bluetooth API kann nur in einem sicheren Kontext verwendet werden.

Der Zugriff auf die API wird von der Permissions Policy-Direktive bluetooth kontrolliert. Die Standard-Zugriffsliste für die bluetooth-Richtlinie ist self, was die Bluetooth-Nutzung in Same-Origin eingebetteten Frames ermöglicht, den Zugriff durch Drittanbieter-Inhalte jedoch standardmäßig verhindert. Cross-Origin-Zugriff wird ermöglicht, indem die erlaubten Ursprünge sowohl im Permissions-Policy: bluetooth HTTP-Header als auch im gewünschten <iframe> angegeben werden.

Um die Funktion nutzen zu können, muss der Benutzer zuerst eine ausdrückliche Erlaubnis erteilen (es erscheint keine Aufforderung zur Genehmigung, wenn der Zugriff aus anderen Gründen, wie etwa durch eine Permissions Policy blockiert, nicht erlaubt ist). Die Berechtigungsaufforderung wird angezeigt, wenn Bluetooth.requestDevice() aufgerufen wird, um Zugriff auf ein neues Bluetooth-Gerät anzufordern, für das keine Erlaubnis erteilt wurde (das zugehörige globale Objekt muss auch transiente Aktivierung haben). Sie können Bluetooth.getDevices() verwenden, um alle Geräte abzurufen, für die der Site zuvor eine Erlaubnis erteilt wurde.

Die Permissions API Methode navigator.permissions.query() kann mit der bluetooth-Berechtigung verwendet werden, um zu testen, ob eine Site die Berechtigung zur Verwendung von Bluetooth-Geräten hat. Der Berechtigungsstatus wird granted, denied oder prompt (erfordert Benutzerbestätigung einer Aufforderung) sein:

js
const btPermission = await navigator.permissions.query({ name: "bluetooth" });
if (btPermission.state !== "denied") {
  // Do something
}

Spezifikationen

Specification
Web Bluetooth
# bluetooth

Browser-Kompatibilität