搜索

pdf文档 websockets Documentation Release 3.3

176.18 KB 32 页 0 下载 183 浏览 0 评论 0 收藏
语言 格式 评分
英语
.pdf
3
摘要
文档主要介绍了websockets库的版本更新和功能改进。在3.3版本中,新增了连接超时、最大数据大小和队列限制等参数,并增强了服务器关闭的稳定性。3.0版本对$recv()$API进行了重大更改,引入了$ConnectionClosed$异常,取代了之前的$None$返回值。文档还详细描述了服务器和客户端的API接口,包括如何处理消息收发、异常处理以及 WebSocket 协议的握手过程。此外,还提到了兼容性问题及调试方法。
AI总结
《websockets Documentation Release 3.3》文档总结如下: ### 主要更新和功能 #### 3.3 版本 - **新增功能**: - `connect()` 和 `serve()` 方法新增 `timeout`、`max_size` 和 `max_queue` 参数。 - 提升了服务器关闭的健壮性。 #### 3.2 版本 - **新增功能**: - 避免在连接关闭前握手时的警告。 - 增加了对传入数据的流量控制。 #### 3.1 版本 - **新增功能**: - 避免在连接关闭前握手时的警告。 - 增加了对传入数据的流量控制。 #### 3.0 版本 - **重大更新**: - `recv()` API 的行为发生重大变化:不再返回 `None`,而是抛出 `ConnectionClosed` 异常。 - 为兼容旧版本,新增 `legacy_recv` 参数,可通过传递 `legacy_recv=True` 恢复旧行为。 - **其他更新**: - 支持将 `connect()` 作为 Python 3.5 的异步上下文管理器。 - 更新文档以支持 Python 3.5 的 `await` 和 `async` 语法。 - `ping()` 和 `pong()` 方法支持传递 `str` 类型的数据。 - 修复了 asyncio 在负载情况下终止连接的 bug。 - 将 `state_name` 属性设为公共 API。 #### 2.7 版本 - **新增功能**: - 增加了对 Python 3.5 的兼容性。 - 更新了文档。 #### 2.6 版本 - **新增功能**: - 在协议中增加了本地地址和远程地址属性。 - 服务器关闭时会正确关闭连接,使用状态码 1001。 ### 核心功能概述 - **服务器功能**: - 提供 `serve()` 方法创建 WebSocket 服务器。 - 支持自定义协议类 `WebSocketServerProtocol`。 - 提供 `recv()` 和 `send()` 方法收发消息。 - 支持设置超时、最大消息大小和队列大小。 - **客户端功能**: - 提供 `connect()` 方法创建 WebSocket 客户端。 - 支持自定义协议类 `WebSocketClientProtocol`。 - 支持设置超时、最大消息大小和队列大小。 - **其他功能**: - 提供 `ping()` 和 `pong()` 方法进行心跳检测。 - 支持异步上下文管理器(Python 3.5 及以上)。 - 支持设置额外的 HTTP 头和子协议。 ### 注意事项 - **3.0 版本兼容性**: - `recv()` 的行为变化可能导致旧代码出错,建议升级时检查相关代码。 - 通过 `legacy_recv` 参数可保持旧行为,但未来可能会移除。 - **调试**: - 开启日志记录可帮助排查连接和消息处理问题。 ### 总结 websockets 库提供了简洁且强大的 WebSocket 实现,支持服务器和客户端的创建、消息收发、心跳检测等功能。3.0 版本的重大更新需要注意 API 的变化,其他版本的更新主要集中在性能优化、兼容性和新功能的增加。
P1
P2
P3
P4
P5
P6
P7
下载文档到本地,方便使用
- 可预览页数已用完,剩余 25 页请下载阅读 -
文档评分
请文明评论,理性发言.