FastAPI-4-路径参数

关于 async 我们先阅读一下廖老师的异步IO  https://www.liaoxuefeng.com/wiki/1016959663602400/1017968846697824

 

路径参数

from fastapi import FastAPI

app = FastAPI()


@app.get("/items/{item_id}")     # 路径参数 item_id 的值将作为参数 item_id 传递给你的函数。
async def read_item(item_id):    
    return {"item_id": item_id}

有类型的路径参数

from fastapi import FastAPI

app = FastAPI()


@app.get("/items/{item_id}")
async def read_item(item_id: int):  # 类型声明:item_id 为一个整形。这里就算我传的参数是字符串'3',FastAPI都会自动帮我输出成int型,但是你传’foo’将会报错
    return {"item_id": item_id}

 

包含路径的路径参数

假设你有一个路径操作,它的路径为 /files/{file_path}

但是你需要 file_path 自身也包含路径,比如 home/johndoe/myfile.txt

因此,该文件的URL将类似于这样:/files/home/johndoe/myfile.txt

路径转换器

你可以使用直接来自 Starlette 的选项来声明一个包含路径路径参数

from fastapi import FastAPI

app = FastAPI()


@app.get("/files/{file_path:path}")
async def read_file(file_path: str):
    return {"file_path": file_path}

你可能会需要参数包含 /home/johndoe/myfile.txt,以斜杠(/)开头。

在这种情况下,URL 将会是 /files//home/johndoe/myfile.txt,在files 和 home 之间有一个双斜杠(//)。

posted @   Tarzen  阅读(43)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!
历史上的今天:
2021-01-26 python 响应结果太大
点击右上角即可分享
微信分享提示