pdf文档 PyWebIO v1.7.0 Documentation

1.37 MB 110 页 0 评论
语言 格式 评分
英语
.pdf
3
摘要
文档详细介绍了PyWebIO v1.7.0的新功能和改进,包括对WebSocket和HTTP通信协议的支持、输出函数的增强、会话管理的优化以及与多种Web框架的集成。PyWebIO通过提供简单易用的Python API,允许开发者快速构建交互式Web应用,无需深入了解HTML和JavaScript。该版本还引入了多项安全性和用户体验的改进,如防止XSS攻击、支持UI国际化、SEO优化以及CDN集成。此外,文档还提供了详细的部署指南,涵盖目录部署、应用部署以及与Tornado、Flask、Django等框架的集成。
AI总结
以下是对《PyWebIO v1.7.0 Documentation》的总结,重点突出核心观点和关键信息,语言简洁明了,逻辑连贯: --- ### **PyWebIO v1.7.0 文档总结** #### **1. 不兼容性更新** - **移除参数**:`disable_asyncio` 参数在 `start_server()` 中被移除(适用于 Django 和 Flask)。 - **弃用方法**:`pywebio.session.data()` 被弃用,建议使用 `pywebio.session.local` 替代。 - **部署地址变更**:集成到 Web 框架中的应用访问地址发生变化,详见“Web 框架集成”部分。 - **参数移除**:`put_scrollable()` 的 `max_height` 参数移除,改用 `height` 参数。 --- #### **2. 详细更改** - **新增功能**: - `put_code()` 增加 `rows` 参数,用于限制显示的最大行数。 - `put_scrollable()` 增加 `keep_bottom` 参数。 - `put_markdown()` 增加用于配置 Markdown 解析选项的参数。 - 输出函数 `output()` 的 `reset()`、`append()` 和 `insert()` 方法支持接收字符串内容。 - 对 `put_code()`、`put_image()`、`put_link()`、`put_row()` 和 `put_grid()` 的参数增加 HTML 转义。 - **修复**: - 修复 `file_upload()` 中 `max_size` 和 `max_total_size` 参数的解析错误。 - 修复 Python 3.6 下自动打开浏览器失败的问题。 - 修复 `put_image()` 在使用 PIL Image 源时因未知文件扩展名引发的错误。 - 修复文件上传时的路径解释错误,避免潜在安全漏洞。 --- #### **3. 版本历史与亮点** - **v1.0 版本**(2021/1/17): - 引入 `start_server()` 和 `go_app()`。 - 支持布局函数 `put_grid()`、`put_row()`、`put_column()` 和样式配置。 - 增加 `toast()`、`popup()`、`put_widget()`、`put_collapse()`、`put_link()`、`put_scrollable()`、`put_loading()` 和 `put_processbar()` 等新组件。 - 支持 JavaScript 执行和控制台输出。 - 提供 `span()` 和 `output()` 函数。 - **v1.1 版本**(2021/2/7): - 增加安全支持:`put_html()` 和 `put_markdown()` 支持 `sanitize` 参数以防止 XSS 攻击。 - 支持 UI 国际化。 - 提供 SEO 支持,通过 `pywebio.platform.seo()` 或函数文档字符串设置 SEO 信息。 - 支持 CDN,便于与 Web 框架集成。 - 提高应用访问速度,取消探测请求以确定通信协议。 - **v1.2 版本**(2021/3/18): - 支持 WebSocket 连接的重新连接,通过 `reconnect_timeout` 参数配置。 - 引入 `path_deploy()`、`path_deploy_http()` 和 `pywebio-path-deploy` 命令,从目录部署 PyWebIO 应用。 - 文档和演示现在提供英文版本。 - 输出函数支持上下文管理器。 --- #### **4. 平台部署** - **目录部署**: - 使用 `path_deploy()` 或 `path_deploy_http()` 从目录部署 PyWebIO 应用。目录中的 Python 文件需包含主函数以被识别为应用。 - 注意:以底线开头的文件或文件夹无法被访问。 - **Web 框架支持**: - 支持 Tornado、Flask、Django、aiohttp、FastAPI/Starlette。 - WebSocket 通信用于 Tornado 或 aiohttp,HTTP 通信用于 Flask 或 Django。 --- #### **5. 服务器-客户端通信协议** - **WebSocket 通信**: - 通过 WebSocket 连接发送 JSON 序列化消息。 - **HTTP 通信**: - 客户端通过 GET 请求轮询后端,后端返回 JSON 序列化的消息列表。 - 表单提交或按钮点击通过 POST 请求发送数据。 --- #### **6. pywebio_battery 模块** - **功能**: - 提供便利功能,帮助快速构建 PyWebIO 应用(需额外安装 `pywebio-battery` 包)。 - 主要功能包括: - 交互相关:`confirm()`、`popup_input()`、`redirect_stdout()`、`run_shell()` 等。 - Web 应用相关:`get_all_query()`、`set_localstorage()`、`get_cookie()`、`login()` 等。 - **示例**: - `pywebio_battery.confirm()` 显示确认弹窗,返回用户点击结果。 --- #### **7. 用户指南** - **核心概念**: - PyWebIO 通过简洁的 API MatSnackBar 提供浏览器上的输出和用户交互功能。 - 支持 `put_text()`、`put_image()`、`put_table()` 等输出函数,以及 `input()`、`select()`、`file_upload()` 等输入函数。 - 目标是通过最少代码实现高效的用户交互和良好的用户体验。 --- 以上是《PyWebIO v1.7.0 Documentation》的核心内容总结,涵盖了版本更新、功能特性、部署方式及核心概念。
P1
P2
P3
P4
P5
P6
P7
下载文档到本地,方便使用
- 可预览页数已用完,剩余 103 页请下载阅读 -
文档评分
请文明评论,理性发言.