Cookie パラメータ¶
Query
パラメータや Path
パラメータを定義するのと同じ方法で、Cookie パラメータを定義できます。
Cookie
をインポートする¶
最初に Cookie
をインポートします。
from typing import Annotated
from fastapi import Cookie, FastAPI
app = FastAPI()
@app.get("/items/")
async def read_items(ads_id: Annotated[str | None, Cookie()] = None):
return {"ads_id": ads_id}
from typing import Annotated, Union
from fastapi import Cookie, FastAPI
app = FastAPI()
@app.get("/items/")
async def read_items(ads_id: Annotated[Union[str, None], Cookie()] = None):
return {"ads_id": ads_id}
from typing import Union
from fastapi import Cookie, FastAPI
from typing_extensions import Annotated
app = FastAPI()
@app.get("/items/")
async def read_items(ads_id: Annotated[Union[str, None], Cookie()] = None):
return {"ads_id": ads_id}
ヒント
可能な場合は、Annotated
バージョンを使用することをお勧めします。
from fastapi import Cookie, FastAPI
app = FastAPI()
@app.get("/items/")
async def read_items(ads_id: str | None = Cookie(default=None)):
return {"ads_id": ads_id}
ヒント
可能な場合は、Annotated
バージョンを使用することをお勧めします。
from typing import Union
from fastapi import Cookie, FastAPI
app = FastAPI()
@app.get("/items/")
async def read_items(ads_id: Union[str, None] = Cookie(default=None)):
return {"ads_id": ads_id}
Cookie
パラメータを宣言する¶
次に、Path
や Query
と同じ構造を使用して、Cookie パラメータを宣言します。
デフォルト値と、追加の検証パラメータまたは注釈パラメータをすべて定義できます。
from typing import Annotated
from fastapi import Cookie, FastAPI
app = FastAPI()
@app.get("/items/")
async def read_items(ads_id: Annotated[str | None, Cookie()] = None):
return {"ads_id": ads_id}
from typing import Annotated, Union
from fastapi import Cookie, FastAPI
app = FastAPI()
@app.get("/items/")
async def read_items(ads_id: Annotated[Union[str, None], Cookie()] = None):
return {"ads_id": ads_id}
from typing import Union
from fastapi import Cookie, FastAPI
from typing_extensions import Annotated
app = FastAPI()
@app.get("/items/")
async def read_items(ads_id: Annotated[Union[str, None], Cookie()] = None):
return {"ads_id": ads_id}
ヒント
可能な場合は、Annotated
バージョンを使用することをお勧めします。
from fastapi import Cookie, FastAPI
app = FastAPI()
@app.get("/items/")
async def read_items(ads_id: str | None = Cookie(default=None)):
return {"ads_id": ads_id}
ヒント
可能な場合は、Annotated
バージョンを使用することをお勧めします。
from typing import Union
from fastapi import Cookie, FastAPI
app = FastAPI()
@app.get("/items/")
async def read_items(ads_id: Union[str, None] = Cookie(default=None)):
return {"ads_id": ads_id}
"技術的な詳細"
Cookie
は、Path
や Query
の「姉妹」クラスです。また、同じ共通の Param
クラスを継承します。
ただし、fastapi
から Query
、Path
、Cookie
などをインポートする場合、これらは実際には特殊なクラスを返す関数であることに注意してください。
情報
Cookie を宣言するには、Cookie
を使用する必要があります。そうでない場合、パラメータはクエリ パラメータとして解釈されます。
まとめ¶
Query
や Path
と同じ共通パターンを使用して、Cookie
で Cookie を宣言します。