fastapi基础
一些fastApi的基础
运行方式一
运行命令:uvicorn main:app --reload
运行方式二
查看接口文档【swagger-ui】:http://127.0.0.1:8000/docs
路径后面加/docs
给服务端发请求
其它知识
Swagger UI
Swagger UI 是一个用于可视化 RESTful API 文档的开源工具。它允许开发者通过一个交互式的界面来浏览、测试和调试 API,而无需直接访问 API 端点。
主要功能和特点包括:
- 交互式文档: Swagger UI 提供一个交互式的用户界面,让开发者可以轻松地浏览 API 文档,了解每个端点的用途、参数和响应。
- API 调试: 用户可以直接在 Swagger UI 中执行 API 请求,而不需要额外的工具或客户端。这使得开发者可以快速测试 API 端点,查看实际的请求和响应。
- 自动生成: Swagger UI 通常能够通过 API 的 OpenAPI 规范(以前称为 Swagger 规范)自动生成文档。这样,只需在代码中添加适当的注释或使用其他工具,就可以生成可读性高、格式一致的 API 文档。
- 支持多种编程语言: Swagger UI 不仅限于特定的编程语言或框架,而是基于 OpenAPI 规范,因此可以用于任何符合规范的 API。
- 集成开发: 由于 Swagger UI 是一个独立的前端工具,可以轻松地与不同的后端框架集成。后端只需提供符合 OpenAPI 规范的文档,而前端就可以通过 Swagger UI 来展示和测试 API。
总体而言,Swagger UI 是一个强大的工具,可以提高开发者对 API 的理解和使用效率。在构建和维护 API 时,Swagger UI 能够为开发者和团队提供便利和一致性。
uvicorn和 uWSGI
uvicorn
和 uWSGI
是两个用于部署 Python Web 应用程序的不同工具,它们在设计和功能上有一些区别。
相同点:
- 用于部署: 两者都是用于将 Python Web 应用程序部署到生产环境的工具。
- 支持异步框架:
uvicorn
和uWSGI
都能够支持异步框架,比如FastAPI
、Starlette
等。
不同点:
- 设计目标:
uvicorn
是一个 ASGI(Asynchronous Server Gateway Interface)服务器,专注于支持异步框架,特别是针对 Starlette 和 FastAPI。uWSGI
是一个应用服务器,提供了多种应用服务器协议(例如,HTTP、FastCGI)的支持,不仅仅局限于 Python,也支持其他语言。
- 协议支持:
uvicorn
使用 ASGI 协议,这是一种专为异步 Python Web 框架设计的协议。uWSGI
支持多种协议,包括但不限于 HTTP、FastCGI、uWSGI 等。
- 生态系统:
uvicorn
通常与 ASGI 框架(如 FastAPI、Starlette)配合使用,并且更适用于异步应用程序的部署。uWSGI
更通用,可以与各种 WSGI(Web Server Gateway Interface)和其他协议兼容的应用程序一起使用。
- 配置文件:
uvicorn
通常通过命令行参数配置,可以直接在运行命令时指定参数。uWSGI
使用配置文件,配置项更加灵活,但也需要更多的配置工作。
- 功能和性能:
uWSGI
提供了更多的功能,例如负载均衡、进程管理、异步和同步模式等,使其在处理大量并发连接时更加强大。uvicorn
更专注于异步请求处理,因此在异步场景下性能可能更好。
选择使用 uvicorn
还是 uWSGI
取决于你的应用程序需求和架构。如果你使用的是异步框架,并且希望专注于异步处理,那么 uvicorn
可能是更合适的选择。如果你需要更通用的应用服务器,并希望获得更多的配置选项和功能,那么 uWSGI
可能是更合适的选择。
可学习视频链接
本文来自博客园,作者:__username,转载请注明原文链接:https://www.cnblogs.com/code3/p/18008820