pdf文档 Tornado 4.5 Documentation

833.04 KB 222 页 0 评论
语言 格式 评分
英语
.pdf
3
摘要
The document provides release notes for Tornado 4.5.3, detailing new features, improvements, and bug fixes. Key updates include a new flexible routing system, enhanced compatibility with asyncio, improved memory usage, and security fixes. The tornado.auth module has been updated for compatibility with Facebook's access_token endpoint, and the tornado.websocket module now limits incoming message size. Performance improvements include reduced circular references and better handling of asynchronous operations. Security fixes address issues like header injection and cookie parsing vulnerabilities. Additionally, Tornado now requires Python 2.7 or 3.3+, with support for PyPy3 continuing.
AI总结
以下是对《Tornado 4.5 Documentation》内容的简要总结,重点突出核心观点和关键信息: --- ### **Tornado 4.5 文档摘要** #### **1. 新增功能与改进** - **WebSocket模块** - 新增了对入站消息大小的限制,默认为10MiB。 - **Routing模块** - 引入了`tornado.routing`模块,提供了比内置`Application`更灵活的路由系统。 - **性能优化** - 减少了循环引用,降低了内存使用并提升了性能。 - improve performance when there are large numbers of active timeouts. - **AsyncIO兼容性** - `tornado.autoreload`现在与`asyncio`事件循环兼容。 - `tornado.gen`的`@gen.coroutine`支持在Cython中编译的函数。 #### **2. 模块更新** - **`tornado.auth`** - 更新以兼容Facebook访问令牌端点的变化,包括对`session_expires`字段的支持。 - 新增`OAuth2Mixin.oauth2_request`方法,用于通过访问令牌进行身份验证。 - **`tornado.autoreload`** - 修复了命令行包装器中导入被误解释为相对导入的问题。 - **`tornado.gen`** - `yield None`等同于`yield gen.moment`,以提高与`asyncio`的兼容性。 - 新增`is_coroutine_function`函数,识别由`coroutine`或`engine`包装的函数。 - `multi`和`multi_future`被弃用,用统一的`multi`函数替代。 - **`tornado.httpclient`** - 超时错误信息更详细,表示请求的状态。 - `HTTPError`对象现在可以使用`copy`模块复制。 - PATCH方法允许在没有`allow_nonstandard_methods`的情况下携带正文。 - **`tornado.ioloop`** - 提升了在大量激活超时情况下的性能。 - **`tornado.locale`** - `get_supported_locales`函数移除了无意义的`cls`参数。 - **`tornado.testing`** - `AsyncTestCase.wait`方法在每次调用时重置超时。 #### **3. 安全性与漏洞修复** - **WebSocket安全性** - 更新了`tornado.websocket`模块以修复潜在的安全漏洞。 - **Cookie漏洞** - 修复了 cookie 解析中的安全漏洞,防止任意 cookie 设定和绕过 XSRF 保护。 - 某些特殊字符(如分号和方括号)现在被不同解析。 #### **4. 兼容性与弃用** - **Python版本支持** - 这是Tornado最后一个支持Python 2.6和3.2的版本。 - Pypy3继续受支持,尽管其基于Python 3.2和3.3的特性混合。 - **依赖项更新** - 新增了对`ordereddict`(仅Python 2.6)、`functools.singledispatch`(Python < 3.4)和`backports_abc`的依赖。 - Windows上的Python 3.5提供二进制轮子。 - **弃用通知** - 某些函数和方法已被标记为弃用,如`multi`和`multi_future`被统一为`multi`。 - `moment`被弃用,建议使用`gen.moment`。 #### **5. 错误修复** - **Bug修复** - 修复了`tornado.auth`与Facebook访问令牌端点的兼容性问题。 - 修复了`tornado.web`中URL正则表达式的回归问题。 - 修复了`tornado.simple_httpclient`中的SSLv2漏洞。 - 修复了`tornado.tcpclient`和`tornado.tcpserver`中的多线程问题。 --- ### **总结** Tornado 4.5主要提升了性能、增强了安全性,并改进了与`asyncio`的兼容性。新增了灵活的路由系统和更严格的WebSocket消息大小限制,同时修复了一些关键漏洞和兼容性问题。此版本为Tornado的最后一个支持Python 2.6和3.2的版本,未来版本将完全过渡到更高版本的Python。
P1
P2
P3
P4
P5
P6
P7
下载文档到本地,方便使用
- 可预览页数已用完,剩余 215 页请下载阅读 -
文档评分
请文明评论,理性发言.