विषय पर बढ़ें

Cookie Parameters

🌐 एआई और मनुष्यों द्वारा किया गया अनुवाद

यह अनुवाद मनुष्यों के मार्गदर्शन में एआई द्वारा किया गया है। 🤝

इसमें मूल अर्थ को गलत समझने या अप्राकृतिक लगने आदि जैसी गलतियाँ हो सकती हैं। 🤖

आप हमें एआई LLM को बेहतर मार्गदर्शन करने में मदद करके इस अनुवाद को बेहतर बना सकते हैं।

अंग्रेज़ी संस्करण

आप Cookie parameters को उसी तरह define कर सकते हैं जैसे आप Query और Path parameters define करते हैं।

पहले Cookie import करें:

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}
🤓 Other versions and variants

Tip

Prefer to use the Annotated version if possible.

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}

फिर cookie parameters को Path और Query जैसी ही structure का उपयोग करके declare करें।

आप default value के साथ-साथ सभी extra validation या annotation parameters भी define कर सकते हैं:

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}
🤓 Other versions and variants

Tip

Prefer to use the Annotated version if possible.

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}

तकनीकी विवरण

Cookie, Path और Query की एक "sister" class है। यह भी उसी common Param class से inherit करती है।

लेकिन याद रखें कि जब आप fastapi से Query, Path, Cookie और अन्य चीज़ें import करते हैं, तो वे वास्तव में ऐसे functions होते हैं जो special classes return करते हैं।

नोट

Cookies declare करने के लिए, आपको Cookie का उपयोग करना होगा, क्योंकि अन्यथा parameters को query parameters के रूप में interpret किया जाएगा।

नोट

ध्यान रखें कि, क्योंकि browsers cookies को विशेष तरीकों से और पर्दे के पीछे handle करते हैं, वे JavaScript को उन्हें आसानी से access करने की अनुमति नहीं देते।

यदि आप /docs पर API docs UI में जाते हैं, तो आप अपनी path operations के लिए cookies की documentation देख पाएँगे।

लेकिन भले ही आप data भरें और "Execute" पर click करें, क्योंकि docs UI JavaScript के साथ काम करता है, cookies भेजी नहीं जाएँगी, और आपको ऐसा error message दिखेगा जैसे आपने कोई values लिखी ही नहीं हों।

Recap

Query और Path जैसे ही common pattern का उपयोग करके, Cookie के साथ cookies declare करें।