1.8 KiB
WebSockets
Bei der Definition von WebSockets deklarieren Sie normalerweise einen Parameter vom Typ WebSocket
und können damit Daten vom Client lesen und an ihn senden. Er wird direkt von Starlette bereitgestellt, Sie können ihn aber von fastapi
importieren:
from fastapi import WebSocket
!!! tip "Tipp"
Wenn Sie Abhängigkeiten definieren möchten, die sowohl mit HTTP als auch mit WebSockets kompatibel sein sollen, können Sie einen Parameter definieren, der eine HTTPConnection
anstelle eines Request
oder eines WebSocket
akzeptiert.
::: fastapi.WebSocket options: members: - scope - app - url - base_url - headers - query_params - path_params - cookies - client - state - url_for - client_state - application_state - receive - send - accept - receive_text - receive_bytes - receive_json - iter_text - iter_bytes - iter_json - send_text - send_bytes - send_json - close
Wenn ein Client die Verbindung trennt, wird eine WebSocketDisconnect
-Exception ausgelöst, die Sie abfangen können.
Sie können diese direkt von fastapi
importieren:
from fastapi import WebSocketDisconnect
::: fastapi.WebSocketDisconnect
WebSockets – zusätzliche Klassen
Zusätzliche Klassen für die Handhabung von WebSockets.
Werden direkt von Starlette bereitgestellt, Sie können sie jedoch von fastapi
importieren:
from fastapi.websockets import WebSocketDisconnect, WebSocketState
::: fastapi.websockets.WebSocketDisconnect
::: fastapi.websockets.WebSocketState