【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
相关推荐
k4m7v2pz几秒前
从 Python 搬到 Rust:pyglet MIDI DAW 变成 egui 鬼畜采样器的迁移复盘
开发语言·python·rust
杨运交5 分钟前
[069][公共模块]Spring Boot 全局异常处理与参数校验实战(下):校验异常精细化处理与 WebFlux 适配
java·spring boot·后端
Linux-lucky8 分钟前
36-Linux学习之旅之MySQL主从复制
linux·运维·学习·mysql·ubuntu
tryCbest11 分钟前
FastAPI中passlib包的作用
python·fastapi·passlib
SatanII13 分钟前
华为云ECS实践:从创建、镜像制作到弹性伸缩完整实操指南
linux·运维·服务器·学习·centos·华为云
广州灵眸科技有限公司15 分钟前
瑞芯微(EASY EAI)RV1126B 星闪使用
运维·人工智能·科技·docker·容器
努力努力再努力wz17 分钟前
【Docker入门系列】:从 Namespace 到 CGroup:一文理解容器资源控制、cgroup v2 与 Memory Controller 实战
运维·docker·容器
可乐鸡翅yeah_22 分钟前
HLS 自动化拨测与手动调试分工,流媒体线上监控体系建设实践
运维·自动化·测试用例·音视频·媒体·m3u8·音视频在线播放
心中有你021425 分钟前
Python Tkinter 情侣恋爱日记桌面小程序(本地文件存储,无数据库)
开发语言·python
PFFstronger28 分钟前
从 0 到 1 搭建接口自动化测试框架:分层架构 + 数据驱动 + 接口依赖编排
python·架构·自动化