๐ฒ ๐¶
๐ฅ ๐ ๐ช, ๐ ๐ช โ๏ธ โ & ๐ ๐ข ๐ ๐ โ โ๏ธ ๐ ๐, & โ โซ๏ธ ๐.
๐ ๐โโ, ๐, & ๐ฉบ¶
๐ตโโ ๐ ๐งพ ๐ฉโ๐ป ๐ข ๐ญ ๐ซ๐ ๐ซ ๐ ๐ก ๐ ๐ ๏ธ.
๐ ๐ซ ๐ฎ ๐ โ ๐โโ ๐ ๐ ๏ธ, โก ๐ ๏ธ ๐ ๐ช ๐โ ๐ซ.
๐ฅ ๐ค ๐โโ โ ๐ ๐, โซ๏ธ ๐ ๐.
๐ตโโ ๐งพ โ โซ๏ธ ๐ โ ๐ค โ ๐ โฎ๏ธ ๐ ๐ ๏ธ, & ๐ช โ โซ๏ธ ๐ โ ๐ โน โซ๏ธ ๐ญ. โซ๏ธ ๐ช ๐ค ๐ฏ ๐จ ๐โโ ๐ ๐.
๐ฅ ๐ ๐ ๐ ๐ ๐ ๏ธ, ๐ค ๐ ๐ ๐ ๐ ๐ช, ๐ผ:
- โ ๐ญ ๐ โ๏ธ ๐ ๐ฌ Pydantic ๐ท ๐ ๐จ ๐ช & ๐จ.
- ๐ ๐ โ โ & ๐ โ๏ธ ๐.
- ๐ ๐ช ๐ข ๐, ๐ด ๐#๏ธโฃ.
- ๐ ๏ธ & โ๏ธ ๐-๐ญ ๐ ๐งฐ, ๐ ๐ธ๐ฒ & ๐ฅ ๐ค, โ๏ธ.
- ๐ฎ ๐ ๐งฝ โ ๐ โฎ๏ธ Oauth2๏ธโฃ โ ๐โ ๐ช.
- ...โ๏ธ.
๐, ๐ 5๏ธโฃ๐ โ๏ธ ๐ถ ๐ฏ โ๏ธ ๐ผ ๐โ ๐ ๐ค ๐ช โ ๐ ๏ธ ๐ฉบ ๐ (โ ๐ญ) โ๏ธ โ๏ธ ๐ ๐ณ โช๏ธโก๏ธ ๐ ๐ข.
๐ฒ ๐ โช๏ธโก๏ธ โ & ๐จ๐ป {¶
๐ ๐ช ๐ช โ๏ธ ๐ Pydantic โ ๐ ๐ ๐ ๐ & ๐ฉบ โ.
๐ผ:
from fastapi import FastAPI
from pydantic_settings import BaseSettings
class Settings(BaseSettings):
openapi_url: str = "/openapi.json"
settings = Settings()
app = FastAPI(openapi_url=settings.openapi_url)
@app.get("/")
def root():
return {"message": "Hello World"}
๐ฅ ๐ฅ ๐ฃ โ openapi_url
โฎ๏ธ ๐ ๐ข "/openapi.json"
.
& โคด๏ธ ๐ฅ โ๏ธ โซ๏ธ ๐โ ๐ FastAPI
๐ฑ.
โคด๏ธ ๐ ๐ช โ ๐ (โ
๐ ๐ฉบ) โ ๐ ๐ข OPENAPI_URL
๐ ๐ป, ๐:
$ OPENAPI_URL= uvicorn main:app
<span style="color: green;">INFO</span>: Uvicorn running on http://127.0.0.1:8000 (Press CTRL+C to quit)
โคด๏ธ ๐ฅ ๐ ๐ถ ๐ /openapi.json
, /docs
, โ๏ธ /redoc
๐ ๐ ๐ค 404 Not Found
โ ๐:
{
"detail": "Not Found"
}