【fastapi】搭建第一个fastapi后端项目

本篇文章介绍一下fastapi后端项目的搭建。其实没有什么好说的,按照官方教程来即可:https://fastapi.tiangolo.com/zh/

安装依赖

这也是我觉得python项目的槽点之一。所有依赖都安装在本地,一旦在别人电脑上编写项目就又要安装一遍。很扯淡。

需要下面两个依赖(我用了清华的pip源)

fastapi:项目的主体库。安装的同时会安装fastapi所依赖的其他库。

bash 复制代码
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple fastapi

uvicorn:一个异步的web服务器。

bash 复制代码
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple uvicorn

安装完了,新建项目目录。可以执行下面命令,把用到的依赖都导出来:

bash 复制代码
pip freeze > ./requirements.txt

导出来的结果其实还是不清晰,因为有安装父依赖会自动安装子依赖的情况,反正聊胜于无吧。

bash 复制代码
annotated-types==0.6.0
anyio==4.3.0
click==8.1.7
colorama==0.4.6
fastapi==0.110.1
h11==0.14.0
idna==3.7
pydantic==2.7.0
pydantic_core==2.18.1
sniffio==1.3.1
starlette==0.37.2
typing_extensions==4.11.0
uvicorn==0.29.0

如果你在别人电脑上开发这个项目,执行下面的命令就可以按照requirements.txt文件安装第三方库:

bash 复制代码
pip install -r requirements.txt

第一行代码

main.py

python 复制代码
from fastapi import FastAPI

app = FastAPI()


@app.get("/")
def read_root():
    return {"Hello": "World"}

这段代码拦截"/"对应所有请求,然后返回一个{"Hello": "World"}

运行服务器

执行下列命令运行服务器,Ctrl + C退出

bash 复制代码
uvicorn main:app --reload
相关推荐
Percep_gan27 分钟前
Linux中安装Redis,很详细
linux·运维·redis
代码栈上的思考28 分钟前
消息队列:内存与磁盘数据中心设计与实现
后端·spring
七七powerful30 分钟前
运维养龙虾--AI 驱动的架构图革命:draw.io MCP 让运维画图效率提升 10 倍,使用codebuddy实战
运维·人工智能·draw.io
枕书32 分钟前
实战记录:如何使用 Docker 一键部署长亭 PandaWiki 智能知识库
运维·docker·容器
李昊哲小课1 小时前
第1章-PySide6 基础认知与环境配置
python·pyqt·pyside
程序员小假1 小时前
我们来说一下 b+ 树与 b 树的区别
java·后端
feng_you_ying_li1 小时前
linux之用户的权限详解(4)
linux·运维·服务器
Meepo_haha2 小时前
Spring Boot 条件注解:@ConditionalOnProperty 完全解析
java·spring boot·后端
2401_894241922 小时前
用Pygame开发你的第一个小游戏
jvm·数据库·python
sheji34162 小时前
【开题答辩全过程】以 基于springboot的房屋租赁系统的设计与实现为例,包含答辩的问题和答案
java·spring boot·后端