基于Asyncio的Python微框架:Quart

Quart是基于Asyncio的Python微框架。它志在让开发者能够在Web开发中很容易地得到Asyncio带来的好处。它对Flask应用的支持最好,它和Flask拥有相同的API。

Quart希望成为功能完整的微框架,所以它支持 HTTP/1.1,HTTP/2 和 Websockets。Quart扩展性很强,并支持很多Flask扩展(希望将来会出现针对Quart的扩展)。

快速教程

你可以通过pip安装Quart

Quart支持Python>=3.6。

下面是Quart应用的一个小例子。

将上面代码放在文件app.py中,可以通过下面命令运行

特性

Quart具备通过HTTP提供网页服务所需的所有特性。如果你熟悉Flask,Quart就是一个在Flask上有所扩展的框架,扩展的功能如下:

HTTP/1.1分块传输和管道

Websockets

HTTP/2,包含服务器推送的能力

贡献

Quart在gitlab上开发,欢迎来提交问题和请求合并代码

测试

测试Quart最好的办法是使用Tox。

这样会检查代码风格并进行测试。

与Flask的API兼容性

Flask API由公用API、私有API及Werkzeug API组成。Quart几乎完全与Flask公用API兼容(除了async和await关键字)。日后会努力兼容Flask私有API,但是不会兼容Werkzeug API。

从Flask迁移过来

从Flask迁移过来要做的应该就是把所有的单词flask改为单词quart,并在必要地方加上async和await关键字。具体请看文档

译者:诗书塞外

英文原文:https://gitlab.com/pgjones/quart

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180425A0940600?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 yunjia_community@tencent.com 删除。

扫码关注云+社区

领取腾讯云代金券