websockets Documentation
Release 3.2
170.46 KB
32 页
0 评论
语言 | 格式 | 评分 |
---|---|---|
英语 | .pdf | 3 |
摘要 | ||
文档详细介绍了websockets库的功能和版本更新日志。该库是一个实现RFC 6455的WebSocket协议库,适用于构建WebSocket服务器和客户端,基于Python的asyncio框架。版本更新日志记录了各个版本的功能新增、改进和问题修复,特别指出了3.0和2.0版本的向后兼容性更改,例如recv() API的变化和send()、ping()、pong()函数转为coroutine。文档还提供了安装指南、用户指南和API参考,帮助开发者理解和使用该库。 | ||
AI总结 | ||
以下是对《websockets Documentation Release 3.2》文档内容的总结,重点突出核心观点和关键信息:
---
### **文档总结**
#### **1. 版本更新日志(Changelog)**
- **版本3.0**
- **重要变更**:`recv()` API发生向后兼容的改变,之前返回`None`,现在抛出`ConnectionClosed`异常,更符合Python习惯。
- 其他改进:
- 支持使用`legacy_recv=True`恢复旧行为。
- `connect()`支持异步上下文管理(仅限Python 3.5)。
- `ping()`和`pong()`支持`str`类型数据。
- 工作稳定性和文档改进。
- **版本2.0**
- **重要变更**:`send()`、`ping()`和`pong()` API从函数变为协程,需使用`await`调用。
- 其他改进:
- 支持子协议。
- 支持自定义握手请求和响应的HTTP头。
- 优化连接终止实现,提升稳定性。
- 增强测试,达到分支覆盖率100%。
- **其他版本更新**:
- **版本2.2**:添加了消息大小限制支持。
- **版本2.3**:改进了关闭码的合规性。
- **版本2.4**:支持非默认事件循环。
- **版本2.5**:提供握手请求和响应HTTP头的访问。
- **版本2.6**:添加本地地址和远程地址属性;优化TCP帧碎片处理。
---
#### **2. 主要功能与特性**
- **Websockets库介绍**:
- 一个用于开发WebSocket服务器和客户端的Python库。
- 实现了RFC 6455标准,注重正确性和简单性。
- 基于`asyncio`,支持高并发应用开发。
- 提供基于协程的简单API,易于使用。
- **核心功能**:
- 支持WebSocket协议的所有要求行为,包括握手、数据帧处理等。
- 提供服务器和客户端的实现,支持自定义扩展。
- 支持子协议、消息大小限制、Origins检查等功能。
- 支持非默认事件循环,提升灵活性。
---
#### **3. 安装与使用**
- **安装指南**:
- 适用于Python 3.4及以上版本。
- 可通过`pip install websockets`安装。
- **使用指南**:
- **服务器端**:
- 编写一个处理单个连接的协程函数。
- 使用`serve()`创建服务器,类似`asyncio.create_server()`。
- **客户端**:
- 使用`connect()`创建客户端连接,支持异步上下文管理(Python 3.5+)。
- **基础功能**:
- 通过`recv()`和`send()`发送和接收消息。
- 支持`ping()`和`pong()`。
---
#### **4. 贡献指南**
- 开发者可以通过问题报告、补丁和建议参与项目。
- 文档覆盖了代码样例和API详细信息。
---
#### **5. 其他信息**
- **Python版本兼容性**:
- 文档基于Python 3.5编写,适用于Python 3.4及以上。
- **API索引**:
- 包括`websockets.client`、`websockets.server`、`websockets.protocol`等模块。
---
以上是文档的核心内容总结,涵盖了版本更新、主要功能、使用指南及其他关键信息。 |
P1
P2
P3
P4
P5
P6
P7
下载文档到本地,方便使用
- 可预览页数已用完,剩余
25 页请下载阅读 -
文档评分