FastAPI入门:Python后端开发新手指南
开篇:FastAPI 是什么,它能用来做什么?

你是不是经常听说“后端开发”、“接口”、“服务器”这些词,但感觉云里雾里的?没关系,今天我们要讲的是一个非常适合新手的后端开发工具 —— FastAPI。
简单来说,FastAPI 是一个用来创建 API 的 Python 框架。那什么是 API 呢?你可以把它想象成一个“点餐系统”。比如你在手机上点外卖的时候,你的操作会被发到服务器,服务器再返回菜单或者订单信息。这个“来回沟通”的过程,就是通过 API 来完成的。
使用 FastAPI,我们可以很轻松地写出让前后端、App 或者其他服务可以调用的数据接口,效率高、速度快,并且还能自动帮你生成漂亮的文档!
环境准备:搭建属于你的开发环境

开始之前,我们需要准备好开发工具和 Python 环境。别担心,这一步其实挺简单的。
1. 安装 Python
首先你需要在电脑上安装 Python。推荐使用 官网 下载最新版本(建议至少是 3.8 及以上)。
安装完成后,在命令行输入:
python --version
或者 Mac 用户可能需要用:
python3 --version
如果能看到类似 Python 3.10.6 的输出,说明已经安装成功啦!
2. 创建项目文件夹
新建一个你喜欢的项目目录,例如:
fastapi-tutorial/
然后在里面打开终端(命令行工具),接下来我们在这个文件夹下进行操作。
3. 安装 FastAPI 和 Uvicorn
FastAPI 本身只是一个框架,我们要配合一个叫 uvicorn 的服务器来运行它。
在终端中依次运行以下命令安装:
pip install fastapi uvicorn
安装完成后,你可以检查是否成功:
uvicorn --version
如果你看到类似 Running uvicorn 0.29.0... 的字样,说明一切就绪!
核心概念:几个必须了解的基础术语

为了让你更容易理解后续的代码,我们先来了解几个基本概念:
| 概念 | 解释 |
|---|---|
| API | 应用程序编程接口,相当于一个“服务员”,负责处理请求并给出响应 |
| 接口路径 | 类似网址的一部分,代表你要访问的功能,例如 /hello |
| 请求方法 | 如 GET、POST,代表你要做的事情(查看数据 / 提交数据) |
| 异步编程 | 能让程序更高效地同时做多件事,FastAPI 支持异步操作 |

实战项目:创建你的第一个 FastAPI 接口


现在我们开始动手写代码了!目标是写一个最简单的 API:当用户访问 /hello 这个地址时,返回一句问候语。
第一步:写 Hello World
在你的项目文件夹中,新建一个文件,命名为 main.py,然后写入以下代码:
from fastapi import FastAPI
app = FastAPI()
@app.get("/hello")
def say_hello():
return {"message": "你好,欢迎学习 FastAPI!"}
这段代码做了什么呢?
FastAPI()创建了一个应用对象@app.get("/hello")表示这是一个 GET 请求接口,路径是/hello- 当用户访问这个路径时,会执行
say_hello函数 - 返回值是一个字典,FastAPI 自动转为 JSON 输出
第二步:运行你的程序
在终端中运行下面这条命令:
uvicorn main:app --reload
解释一下这条命令:
uvicorn是启动服务器的命令main:app表示从main.py文件中加载app对象--reload是为了让代码修改后自动重启(方便调试)
这时候你会看到提示,说服务正在运行,通常是在 http://127.0.0.1:8000
第三步:测试你的接口
你可以直接在浏览器中输入:
http://127.0.0.1:8000/hello
你应该会看到这样的结果:
{
"message": "你好,欢迎学习 FastAPI!"
}
恭喜你!你刚刚写出了人生中的第一个后端接口 🎉
第四步:加一个 POST 接口
GET 接口只能获取数据,如果我们想让用户提交一些数据呢?这时候就要用 POST 接口了。
我们来实现一个接收用户名并返回欢迎消息的接口:
修改 main.py,添加如下代码:
@app.post("/welcome")
def welcome_user(name: str):
return {"message": f"欢迎你,{name}!"}
注意看这里用了 @app.post,并且函数参数有 name: str,表示接收字符串类型的参数。
保存后刷新页面不会生效,因为 POST 接口不是直接通过浏览器访问的。我们可以使用一个网页来测试:http://127.0.0.1:8000/docs
这是 FastAPI 自动生成的 API 文档界面,非常直观!
点击 /welcome -> Try it out -> 在参数框中输入一个名字,例如 "Tom",点击 Execute,就能看到返回的结果啦!
更进一步:做一个带参数的接口
有时候我们需要传多个参数。比如我们要做一个计算两个数字之和的接口:
@app.get("/add")
def add_numbers(a: int, b: int):
return {"result": a + b}
当你访问:
http://127.0.0.1:8000/add?a=5&b=3
你会得到:
{
"result": 8
}
这里我们学会了怎么传递查询参数(query parameters),它们在 URL 中跟着 ? 出现。
常见问题解答
Q1:运行时报错 No module named 'fastapi' 怎么办?
答: 说明还没有正确安装 FastAPI,请运行:
pip install fastapi uvicorn
Q2:为什么访问不了 /hello?
答: 先确认你是否运行了服务器(uvicorn main:app --reload),再确保地址拼写正确(http://127.0.0.1:8000/hello)
Q3:如何退出服务器?
答: 在终端中按 Ctrl + C 即可停止运行。
Q4:接口参数能不能不传?会不会报错?
答: 如果你不传必填参数,FastAPI 会自动返回错误信息,提示缺少哪个参数。
Q5:有没有办法让接口支持中文?
答: 默认支持 UTF-8 编码,所以中文没有问题。
学习建议:下一步该学什么?
恭喜你完成了 FastAPI 的入门学习!你现在掌握了:
- FastAPI 的安装与运行
- 写 GET 和 POST 接口的基本方法
- 使用自动生成的文档来测试接口
- 处理查询参数
接下来,建议你继续学习以下内容,以提升实战能力:
✅ 数据模型与 Pydantic
用于定义请求体的结构,让接口更规范、安全。
✅ 数据库连接(如 SQLite、MySQL)
学会把用户数据或内容存储到数据库中。
✅ 异常处理与状态码
学习如何返回不同的 HTTP 状态码和错误信息。
✅ JWT 认证机制
实现用户登录验证功能,保护你的 API 不被随意访问。
小结
在这篇教程中,我们从零开始,一步步带你认识了 FastAPI 是什么,如何安装配置,写出自己的第一个接口,并尝试了不同类型的请求方式。整个过程中我们强调了实践性,每一步都配有代码实例,帮助你快速入门。
FastAPI 是一个强大又易上手的工具,非常适合刚入门后端开发的朋友。不要害怕遇到不懂的概念,边学边练,慢慢你就会上手!
记住一句话:程序员最强大的能力不是写代码,而是遇到问题时知道如何查资料和解决问题。
祝你学习愉快,成为优秀的后端开发者!🚀

评论 0