特点
简单来说
1.ASGI
2.GraphQL支持
3.Yaml格式支持
-
可加载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支持,就更棒了。