| 语言 | 格式 | 评分 |
|---|---|---|
英语 | .epub | 3 |
| 摘要 | ||
文档介绍了Tornado 5.1版本的主要更新内容,包括对Python 2.7和3.4的支持将被移除,最低支持Python版本为3.5.2。此外,文档还提到了多个模块的改进,如tornado.auth模块的错误处理优化,tornado.autoreload的命令行包装器保留,tornado.websocket对压缩的支持,tornado.template的错误处理改进,以及tornado.web对头信息大小限制的移除。文档还指出tornado.stack_context模块将被移除,并建议开发者使用Future接口替代回调接口。 | ||
| AI总结 | ||
《Tornado 5.1 Documentation》的主要更新内容如下:
### 1. **主要更新**
- **错误处理改进**:在 `tornado.auth` 模块中,修复了网络错误或其他错误导致的请求挂起问题。
- **弃用通知**:
- Tornado 6.0 将不再支持 Python 2.7 和 3.4,最低支持版本为 Python 3.5.2。
- `tornado.stack_context` 模块将被移除,因其无法与原生协程兼容。
- 回调接口(callback-based interfaces)将被移除,建议使用协程接口(coroutine interfaces)。
### 2. **模块更新**
- **`tornado.auth`**:
- `OAuthMixin` 的 `_oauth_get_user` 方法被弃用,建议使用 `_oauth_get_user_future`。
- OAuth 流程现在支持原生协程。
- **`tornado.autoreload`**:
- 修复了 Windows 系统上内部自动重载(autoreload)与命令行包装器(command-line wrapper)重复启动进程的问题。
- **`tornado.template`**:
- 增加了对非 ASCII 文件名的支持。
- 新增了 `whitespace` 模板选项,支持更灵活的空白字符处理。
- **`tornado.web`**:
- 移除了单个响应头的 4000 字节限制。
- 静态文件处理 `StaticFileHandler` 现在支持 `.gz`、`.bz2` 和 `.xz` 文件的正确 `Content-Type`。
- 压缩级别默认调整为 6(原为 9)。
- 新增 `xsrf_cookie_kwargs` 配置,用于设置反跨站请求伪造(CSRF)Cookie 的属性(如 `secure` 和 `httponly`)。
- **`tornado.log`**:
- 新增颜色日志支持,适用于终端环境,并兼容 Windows 系统(通过 `colorama` 库)。
- **`tornado.websocket`**:
- 支持 WebSocket 连接的“permessage-deflate”压缩扩展。
- 修复了压缩启用时的延续帧(continuation frame)处理问题。
### 3. **其他改进**
- **日志模块**:`tornado.log` 提供了三类日志流(`tornado.access`、`tornado.application`、`tornado.general`),并支持独立配置。
- **模板引擎**:`tornado.template.ParseError` 现在包含文件名信息,便于调试。
- **测试支持**:`tornado.testing.ExpectLog` 新增 `logged_stack` 属性,便于测试日志记录行为。
### 4. **版本兼容性**
- Tornado 5.1 与 Python 3.5.2 及以上版本兼容,建议开发者逐步迁移代码以适应未来版本(如 Tornado 6.0)的变更。
### 5. **其他注意事项**
- 对于依赖 `tornado.stack_context` 的代码,建议迁移到 `contextvars`(Python 3.7+ 标准库模块)或其他替代方案。
- 使用回调接口的代码应尽快迁移到协程接口,以避免在 Tornado 6.0 中出现兼容性问题。
### 总结
Tornado 5.1 主要聚焦于错误处理、性能优化、日志改进以及对现代 Python 特性的支持。开发者应特别注意弃用的接口和模块,提前规划代码迁移,以确保在 Tornado 6.0 发布时能够顺利过渡。 | ||
P1
P2
P3
P4
P5
P6
P7
下载文档到本地,方便使用
- 可预览页数已用完,剩余
352 页请下载阅读 -
文档评分














Tornado 5.1 Documentation
Tornado 6.1 Documentation