网站首页 > 技术文章 正文
小编最近开发了:AI人工智能工具 的微信小程序,其中有些服务需要服务器的开发,由于使用功能简单,小编使用了python + flask 作为 了web服务器的开发,为小程序进行后台服务
从本期开始,我们一起进入flask的世界吧
Flask 是一个微型的 Python 开发的 Web 框架,基于Werkzeug WSGI工具箱和Jinja2 模板引擎。 Flask使用BSD授权。 Flask也被称为“microframework”,因为它使用简单的核心,用extension增加其他功能。Flask没有默认使用的数据库、窗体验证工具。然而,Flask保留了扩增的弹性,可以用Flask-extension加入这些功能:ORM、窗体验证工具、文件上传、各种开放式身份验证技术。
特性
- 内置开发用服务器和debugger
- 集成单元测试(unit testing)
- RESTful request dispatching
- 使用Jinja2模板引擎
- 支持secure cookies(client side sessions)
- 100% WSGI 1.0兼容
- Unicode based
- 详细的文件、教学
- Google App Engine兼容
- 可用Extensions增加其他功能
安装
Python 版本
推荐使用最新版本的 Python 3 。 Flask 支持 Python 3.4 及更高版本的 Python 3 、 Python 2.7 和 PyPy 。
依赖
当安装 Flask 时,以下配套软件会被自动安装。
- Werkzeug 用于实现 WSGI ,应用和服务之间的标准 Python 接口。
- Jinja 用于渲染页面的模板语言。
- MarkupSafe 与 Jinja 共用,在渲染页面时用于避免不可信的输入,防止注入攻击。
- ItsDangerous 保证数据完整性的安全标志数据,用于保护 Flask 的 session cookie.
- Click 是一个命令行应用的框架。用于提供 flask 命令,并允许添加自定义 管理命令。
可选依赖
以下配套软件不会被自动安装。如果安装了,那么 Flask 会检测到这些软件。
- Blinker 为 信号 提供支持。
- SimpleJSON 是一个快速的 JSON 实现,兼容 Python’s json 模块。如果安装 了这个软件,那么会优先使用这个软件来进行 JSON 操作。
- python-dotenv 当运行 flask 命令时为 通过 dotenv 设置环境变量 提供支持。
- Watchdog 为开发服务器提供快速高效的重载。
建议在开发环境和生产环境下都使用虚拟环境来管理项目的依赖。
为什么要使用虚拟环境?随着你的 Python 项目越来越多,你会发现不同的项目会需要 不同的版本的 Python 库。同一个 Python 库的不同版本可能不兼容。
虚拟环境可以为每一个项目安装独立的 Python 库,这样就可以隔离不同项目之间的 Python 库,也可以隔离项目与操作系统之间的 Python 库。