02. FastAPI——路由

路由就是 URL + HTTP方法 → 处理函数之间的映射关系。

换句话说,当客户端以某种 HTTP 方法 (如 GETPOSTDELETE 等)请求某个 URL 时,服务器会根据路由规则匹配对应的处理函数,执行该函数并生成响应。

FastAPI的路由定义基于Python的装饰器模式

python 复制代码
@app.get("/url_root")
async def root():
    return {"message": "hello world"}

以上述代码为例:

  • @装饰器 ,@app.get("/url_root")是一个装饰器表达式
  • app实例名称
  • getFastAPI实例的方法,用于注册 HTTP GET 路由
  • "/url_root"请求路径
  • async 是异步关键字,表示root() 函数是个异步函数
  • root() 函数是请求路径**"/url_root"** 对应的处理函数
  • return 后面的内容就是root()函数的返回值, 也是访问/url_root时的响应结果

简而言之:通过上面3行代码,用户在访问 http://127.0.0.1:8000**/url_root发送GET请求时,FastAPI会调用与该路径绑定的异步函数root()** ,函数返回的 Python 字典会被自动转换为 JSON ,并作为 HTTP 响应返回给客户端。因此,我们在浏览器上可以看到返回值:{"message": "hello world"}

代码运行后,在/docs也可以看到这个路由的内容。

相关推荐
武子康几秒前
大数据-263 实时数仓-Canal 增量订阅与消费原理:MySQL Binlog 数据同步实践
大数据·hadoop·后端
Canace4 分钟前
使用大模型来维护知识库
前端·人工智能
HashTang5 分钟前
用自然语言驱动的开源 3D 建筑设计编辑器-Aedifex
前端·github·ai编程
Ricky111zzz5 分钟前
leetcode学python记录1
python·算法·leetcode·职场和发展
fengfuyao9855 分钟前
VC++基于服务器的点对点文件传输实例
服务器·开发语言·c++
favour_you___6 分钟前
epoll惊群问题与解决
服务器·网络·tcp/ip·epoll
程序猿_极客15 分钟前
SpringBoot 三大参数注解详解:@RequestParam @RequestBody @PathVariable 区别及常用开发注解
java·spring boot·后端·面试八股文·springboot注释
小白学大数据21 分钟前
Selenium+Python 爬虫:动态加载头条问答爬取
爬虫·python·selenium
T__TIII22 分钟前
milvus 数据备份和还原
后端
用户9623779544828 分钟前
代码审计 | Filter —— Tomcat 内存马从零到注入
后端