nonebot2/website/versioned_docs/version-2.3.0/api/drivers/websockets.md

137 lines
1.9 KiB
Markdown
Raw Normal View History

2024-05-01 17:01:32 +08:00
---
sidebar_position: 4
description: nonebot.drivers.websockets 模块
---
# nonebot.drivers.websockets
[websockets](https://websockets.readthedocs.io/) 驱动适配
```bash
nb driver install websockets
# 或者
pip install nonebot2[websockets]
```
:::tip 提示
本驱动仅支持客户端 WebSocket 连接
:::
## _def_ `catch_closed(func)` {#catch-closed}
- **参数**
- `func` ((P) -> Coroutine[Any, Any, T])
- **返回**
- (P) -> Coroutine[Any, Any, T]
## _class_ `Mixin(<auto>)` {#Mixin}
- **说明:** Websockets Mixin
- **参数**
auto
### _method_ `websocket(setup)` {#Mixin-websocket}
- **参数**
- `setup` ([Request](index.md#Request))
- **返回**
- AsyncGenerator[[WebSocket](index.md#WebSocket), None]
## _class_ `WebSocket(*, request, websocket)` {#WebSocket}
- **说明:** Websockets WebSocket Wrapper
- **参数**
- `request` ([Request](index.md#Request))
- `websocket` (WebSocketClientProtocol)
### _async method_ `accept()` {#WebSocket-accept}
- **参数**
empty
- **返回**
- untyped
### _async method_ `close(code=1000, reason="")` {#WebSocket-close}
- **参数**
- `code` (int)
- `reason` (str)
- **返回**
- untyped
### _async method_ `receive()` {#WebSocket-receive}
- **参数**
empty
- **返回**
- str | bytes
### _async method_ `receive_text()` {#WebSocket-receive-text}
- **参数**
empty
- **返回**
- str
### _async method_ `receive_bytes()` {#WebSocket-receive-bytes}
- **参数**
empty
- **返回**
- bytes
### _async method_ `send_text(data)` {#WebSocket-send-text}
- **参数**
- `data` (str)
- **返回**
- None
### _async method_ `send_bytes(data)` {#WebSocket-send-bytes}
- **参数**
- `data` (bytes)
- **返回**
- None
## _class_ `Driver(env, config)` {#Driver}
- **参数**
- `env` ([Env](../config.md#Env))
- `config` ([Config](../config.md#Config))