๐ง ๐ธ - ๐ป¶
๐ฅ ๐ ๐ช โ๏ธ 2๏ธโฃ ๐ฌ FastAPI ๐ธ, โฎ๏ธ ๐ซ ๐ ๐ฌ ๐ & ๐ซ ๐ ๐ฉบ โ, ๐ ๐ช โ๏ธ ๐ ๐ฑ & "๐ป" 1๏ธโฃ (โ๏ธ ๐ ) ๐ง-๐ธ(โ).
๐ FastAPI ๐ธ¶
"๐" โ โ ๐ "๐ฌ" ๐ธ ๐ฏ โก, ๐ โคด๏ธ โ ๐ ๐ ๐ ๐ฝ ๐ โก, โฎ๏ธ โก ๐ ๏ธ ๐ฃ ๐ ๐ง-๐ธ.
๐-๐ ๐ธ¶
๐ฅ, โ ๐, ๐-๐, FastAPI ๐ธ, & ๐ฎ โก ๐ ๏ธ:
from fastapi import FastAPI
app = FastAPI()
@app.get("/app")
def read_main():
return {"message": "Hello World from main app"}
subapi = FastAPI()
@subapi.get("/sub")
def read_sub():
return {"message": "Hello World from sub API"}
app.mount("/subapi", subapi)
๐ง-๐ธ¶
โคด๏ธ, โ ๐ ๐ง-๐ธ, & ๐ฎ โก ๐ ๏ธ.
๐ ๐ง-๐ธ โ1๏ธโฃ ๐ฉ FastAPI ๐ธ, โ๏ธ ๐ 1๏ธโฃ ๐ ๐ "๐ป":
from fastapi import FastAPI
app = FastAPI()
@app.get("/app")
def read_main():
return {"message": "Hello World from main app"}
subapi = FastAPI()
@subapi.get("/sub")
def read_sub():
return {"message": "Hello World from sub API"}
app.mount("/subapi", subapi)
๐ป ๐ง-๐ธ¶
๐ ๐-๐ ๐ธ, app
, ๐ป ๐ง-๐ธ, subapi
.
๐ ๐ผ, โซ๏ธ ๐ ๐ โก /subapi
:
from fastapi import FastAPI
app = FastAPI()
@app.get("/app")
def read_main():
return {"message": "Hello World from main app"}
subapi = FastAPI()
@subapi.get("/sub")
def read_sub():
return {"message": "Hello World from sub API"}
app.mount("/subapi", subapi)
โ ๐ง ๐ ๏ธ ๐ฉบ¶
๐, ๐ uvicorn
โฎ๏ธ ๐ ๐ฑ, ๐ฅ ๐ ๐ main.py
, โซ๏ธ ๐:
$ uvicorn main:app --reload
<span style="color: green;">INFO</span>: Uvicorn running on http://127.0.0.1:8000 (Press CTRL+C to quit)
& ๐ ๐ฉบ http://127.0.0.1:8000/docs.
๐ ๐ ๐ ๐ง ๐ ๏ธ ๐ฉบ ๐ ๐ฑ, ๐ ๐ด ๐ฎ ๐ โก ๐ ๏ธ:
& โคด๏ธ, ๐ ๐ฉบ ๐ง-๐ธ, http://127.0.0.1:8000/subapi/docs.
๐ ๐ ๐ ๐ง ๐ ๏ธ ๐ฉบ ๐ง-๐ธ, โ
๐ด ๐ฎ ๐ โก ๐ ๏ธ, ๐ ๐ฝ โ ๐ง-โก ๐ก /subapi
:
๐ฅ ๐ ๐ ๐ โฎ๏ธ ๐ 2๏ธโฃ ๐ฉโ๐ป ๐ข, ๐ซ ๐ ๐ท โ, โฉ๏ธ ๐ฅ ๐ ๐ช ๐ฌ ๐ ๐ฏ ๐ฑ โ๏ธ ๐ง-๐ฑ.
๐ก โน: root_path
¶
๐โ ๐ ๐ป ๐ง-๐ธ ๐ฌ ๐, FastAPI ๐ โ ๐
๐ ๐ป โก ๐ง-๐ธ โ๏ธ ๐ ๏ธ โช๏ธโก๏ธ ๐ซ ๐ง ๐ค root_path
.
๐ ๐, ๐ง-๐ธ ๐ ๐ญ โ๏ธ ๐ โก ๐ก ๐ฉบ ๐.
& ๐ง-๐ธ ๐ช โ๏ธ ๐ฎ ๐ ๐ ๐ง-๐ธ & ๐ ๐ ๐ท โ, โฉ๏ธ FastAPI ๐ต ๐ ๐ root_path
โ ๐.
๐ ๐ ๐ก ๐
๐ root_path
& โ โ๏ธ โซ๏ธ ๐ฏ ๐ ๐ โ
๐ณ.