फास्टएपी वापरून उच्च कार्यक्षमता असलेली API सेवा कशी तयार करावी
फास्टएपी वापरून उच्च कार्यक्षमता असलेली API सेवा कशी तयार करावी
फास्टएपी हा एक आधुनिक, जलद (कार्यक्षम) वेब फ्रेमवर्क आहे, जो API तयार करण्यासाठी डिझाइन केलेला आहे. हा पायथन प्रकारांच्या सूचनांवर आधारित आहे आणि असिंक्रोनस प्रोग्रामिंगला समर्थन देतो, ज्यामुळे विकासकांना उच्च कार्यक्षमता, उच्च उपलब्धता आणि कमी विलंब असलेल्या API सेवांचा विकास करण्याची परवानगी मिळते. या लेखात, आम्ही तुम्हाला फास्टएपी वापरून उच्च कार्यक्षमता असलेली API सेवा तयार करण्याची प्रक्रिया चरण-दर-चरण समजावून सांगणार आहोत, ज्यामुळे तुम्हाला वातावरण सेटअपपासून तैनातीपर्यंत संपूर्ण प्रक्रिया पूर्ण करण्यात मदत होईल.
पहिला टप्पा: वातावरणाची तयारी
तुम्हाला तुमच्या विकास वातावरणात पायथन 3.6+ स्थापित असल्याची खात्री करणे आवश्यक आहे. जर तुम्ही अद्याप स्थापित केले नसेल, तर तुम्ही पायथन अधिकृत वेबसाइट वर जाऊन डाउनलोड आणि स्थापित करू शकता.
फास्टएपी आणि युव्हिकॉर्न स्थापित करणे
फास्टएपी स्वतः सेवा प्रदान करत नाही, त्याला एक ASGI सर्व्हर आवश्यक आहे. येथे आम्ही युव्हिकॉर्न वापरतो, जो एक उच्च कार्यक्षमता ASGI सर्व्हर आहे. फास्टएपी आणि युव्हिकॉर्न स्थापित करण्यासाठी खालील आदेश वापरू शकता:
pip install fastapi uvicorn
दुसरा टप्पा: मूलभूत API तयार करणे
चला एक साधी फास्टएपी अनुप्रयोग तयार करूया.
अनुप्रयोग फाइल तयार करणे
तुमच्या प्रकल्प निर्देशिकेत, एक पायथन फाइल तयार करा, जसे की main.py, आणि त्यामध्ये खालील कोड लिहा:
from fastapi import FastAPI
app = FastAPI()
@app.get("/")
async def read_root():
return {"message": "Hello, World!"}
वरील कोडमध्ये, आम्ही प्रथम फास्टएपी आयात केला आणि एक app उदाहरण तयार केले. नंतर, आम्ही एक GET मार्ग परिभाषित केला, जो मूळ पथ / वर प्रवेश केल्यास एक साधी JSON प्रतिसाद परत करतो.
सर्व्हर सुरू करणे
तुमच्या फास्टएपी सर्व्हरला सुरू करण्यासाठी खालील आदेश वापरा:
uvicorn main:app --reload
main: फाइल नाव दर्शविते, .py विस्तारांशिवाय.app: फास्टएपी उदाहरण दर्शविते.--reload: विकास मोडमध्ये, फाइल बदलल्यास सर्व्हर आपोआप पुन्हा सुरू होतो.
तिसरा टप्पा: मार्ग आणि डेटा मॉडेल परिभाषित करणे
जटिल API तयार करण्यासाठी, तुम्हाला Pydantic वापरून डेटा मॉडेल परिभाषित करणे आवश्यक आहे.
डेटा मॉडेल तयार करणे
main.py मध्ये खालील सामग्री जोडा:
from pydantic import BaseModel
class Item(BaseModel):
name: str
price: float
is_available: bool = True
या कोडमध्ये Pydantic वापरून एक डेटा मॉडेल Item तयार केले आहे, ज्यामध्ये वस्तूचे नाव, किंमत आणि उपलब्धता यासारख्या तीन गुणधर्मांचा समावेश आहे.
नवीन मार्ग वाढवणे
त्यानंतर, आपण Item प्रकाराच्या डेटाला स्वीकारण्यासाठी एक नवीन POST मार्ग परिभाषित करू शकतो:
@app.post("/items/")
async def create_item(item: Item):
return {"item_name": item.name, "item_price": item.price}
या मार्गामध्ये, फास्टएपी स्वयंचलितपणे प्रवेश केलेल्या डेटाची पडताळणी करेल आणि ते Item मॉडेलमध्ये नकाशित करेल.
चौथा टप्पा: दस्तऐवज स्वयंचलितपणे तयार करणे
फास्टएपीचा एक मोठा फायदा म्हणजे API दस्तऐवज स्वयंचलितपणे तयार करणे. तुम्ही खालील पत्त्यावर भेट देऊन ते पाहू शकता:
- स्वॅगर UI:
http://127.0.0.1:8000/docs - रेडॉक:
http://127.0.0.1:8000/redoc
या तयार केलेल्या दस्तऐवजांमध्ये, तुम्ही इंटरएक्टिव्हपणे API चा परीक्षण करू शकता, प्रत्येक मार्गाच्या विनंती आणि प्रतिसाद स्वरूप पाहू शकता.
पाचवा टप्पा: ओळख सत्यापन जोडणे
वास्तविक अनुप्रयोगांमध्ये, ओळख सत्यापन एक महत्त्वाचा टप्पा आहे. चला एक साधी भूमिका आधारित ओळख सत्यापन जोडूया.
सुरक्षा अवलंबन जोडणे
फास्टएपीच्या Depends पद्धती आणि OAuth2PasswordBearer वापरून ओळख सत्यापन लागू करा:
from fastapi import Depends, HTTPException, status
from fastapi.security import OAuth2PasswordBearer
oauth2_scheme = OAuth2PasswordBearer(tokenUrl="token")
async def fake_decode_token(token):
return {"sub": token}
async def get_current_user(token: str = Depends(oauth2_scheme)):
user = fake_decode_token(token)
if user is None:
raise HTTPException(status_code=status.HTTP_401_UNAUTHORIZED, detail="Invalid authentication credentials")
return user
मार्ग संरक्षित करणे
त्यानंतर, तुम्ही ओळख सत्यापन आवश्यक असलेल्या मार्गांमध्ये ते जोडू शकता:
@app.get("/users/me")
async def read_users_me(current_user: dict = Depends(get_current_user)):
return current_user
सहावा टप्पा: फास्टएपी अनुप्रयोग तैनात करणे
तुम्ही विकास पूर्ण केल्यावर, तुम्हाला अनुप्रयोग क्लाउड सर्व्हरवर तैनात करावा लागेल. तुम्ही Docker वापरून तैनात करण्याचा पर्याय निवडू शकता.
Dockerfile तयार करणे
प्रकल्प निर्देशिकेत Dockerfile नावाची एक फाइल तयार करा, त्यामध्ये खालील सामग्री टाका:
FROM tiangolo/uvicorn-gunicorn-fastapi:python3.8
COPY ./app /app
Docker इमेज तयार करणे
तुमच्या टर्मिनलमध्ये, Docker इमेज तयार करण्यासाठी खालील आदेश वापरा:
docker build -t myfastapiapp .
Docker कंटेनर चालवणे
तुमच्या फास्टएपी अनुप्रयोग चालवा:
docker run -d --name fastapi -p 80:80 myfastapiapp
सारांश
या लेखात, आम्ही फास्टएपी वापरून उच्च कार्यक्षमता असलेली API सेवा कशी तयार करावी याबद्दल सखोल माहिती दिली, वातावरणाची तयारी, मूलभूत API तयार करणे, मार्ग आणि डेटा मॉडेल परिभाषित करणे, ओळख सत्यापन जोडणे आणि तैनाती यांचा संपूर्ण प्रक्रियेचा समावेश आहे. फास्टएपी अनेक शक्तिशाली कार्ये प्रदान करते, ज्यामुळे आधुनिक API तयार करणे सोपे आणि कार्यक्षम होते, तुम्ही अधिकृत दस्तऐवजाद्वारे अधिक कार्ये आणि वैशिष्ट्ये अन्वेषण करू शकता. आशा आहे की हा लेख तुम्हाला फास्टएपीमध्ये जलद प्रवेश मिळवण्यात मदत करेल, तुमच्या प्रकल्प विकास कार्यक्षमता प्रभावीपणे वाढवेल!





