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也可以看到这个路由的内容。

相关推荐
斌糖雪梨1 小时前
invokeBeanFactoryPostProcessors(beanFactory); 方法详解
java·后端·spring
进击切图仔1 小时前
Linux 挂载操作
linux·运维·服务器
炽天使3281 小时前
龙虾尝鲜记(4)——Ubuntu 笔记本无头服务器全配置
linux·服务器·ubuntu
dashizhi20152 小时前
服务器如何记录共享文件访问日志、查看用户访问共享文件的行为日志?
运维·服务器
tongxh4232 小时前
自己编译RustDesk,并将自建ID服务器和key信息写入客户端
运维·服务器
FirstFrost --sy2 小时前
仿mudou库one thread one loop式并发服务器实现
运维·服务器·开发语言·c++
不知名。。。。。。。。2 小时前
仿muduo库实现高并发服务器--定时器模块的整合
linux·运维·服务器
勿芮介2 小时前
【大模型应用】在window/linux上卸载OpenClaw
java·服务器·前端
上进小菜猪2 小时前
复杂 SQL 查询性能优化:深入解析 KingbaseES 的连接条件下推机制
后端