responder 初探

特点

简单来说
1.ASGI
2.GraphQL支持
3.Yaml格式支持

  1. 可加载flask
    5.后台任务


    image.png

安全性

支持cors, trusts_host

api = responder.API(cors=True)
api = responder.API(allowed_hosts=[example.com, tenant.example.com])

安装

responder 目前版本是1.1.2
依赖 starlette
但starltte 目前版本是0.9.8 有兼容性问题
https://github.com/kennethreitz/responder/issues/255

ModuleNotFoundError: No module named 会报这个个问题'starlette.lifespan' #38

解决办法是安装starltte 版本0.8就可以了

运行

import responder

api = responder.API()


@api.route("/{greeting}")
async def greet_world(req, resp, *, greeting):
    resp.text = f"{greeting}, world"


if __name__ == "__main__":
    api.run()
image.png

总结:

kennethreitz
出品的,大多是精品
短时间就达到2k多star

一些理念是比较好的, 比如
1.asgi支持
2.background
.....

期盼,如果能加上uvloop支持,就更棒了。

参考
https://python-responder.org/en/latest/tour.html

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容