Starlette是一个轻量级的 ASGI 框架和工具包,特别适合用来构建高性能的asyncio服务.
Starlette的主要特性:
性能表现优异WebSocket支持.GraphQL支持.进程内的后台任务执行启动和关闭服务的事件触发测试客户端构建于 requests.支持CORS,GZip,StaticFiles,Streaming响应.支持会话和Cookie100%测试覆盖率100%类型注解无依赖示例代码:
fromstarlette.responsesimportJSONResponsefromstarlette.routingimportRouteasyncdefhomepage(request):returnJSONResponse({'hello':'world'})app=Starlette(debug=True,routes=[Route('/',homepage),])运行:
$uvicornexample:app
评论