آموزش FastAPI با تورهام، قسمت بیشتم – Login using JWT part 1
در این قسمت از آموزش FastAPI با تورهام به نحوه ایجاد سیستم ورود و خروج با استفاده از JWT میپردازیم.
مرحله اول: نصب و راهاندازی FastAPI و تنظیمات JWT
در این مرحله، ابتدا FastAPI را نصب و راهاندازی میکنیم. سپس تنظیمات مربوط به JWT را انجام میدهیم.
pip install fastapi
pip install uvicorn
سپس یک فایل به نام jwt_settings.py ایجاد کرده و تنظیمات JWT را در آن قرار میدهیم:
JWT_SECRET_KEY = "secret_key"
JWT_ALGORITHM = "HS256"
JWT_EXPIRATION = 3600
مرحله دوم: ساخت سیستم ورود و خروج با JWT
در این مرحله، یک سیستم ساده برای ورود و خروج کاربران با JWT ایجاد میکنیم.
from fastapi import FastAPI, Depends, HTTPException
from fastapi.security import OAuth2PasswordBearer
from jose import jwt
from jwt_settings import JWT_SECRET_KEY, JWT_ALGORITHM, JWT_EXPIRATION
app = FastAPI()
oauth2_scheme = OAuth2PasswordBearer(tokenUrl="token")
def create_access_token(data: dict, expires_delta):
to_encode = data.copy()
expire = datetime.utcnow() + expires_delta
to_encode.update({"exp": expire})
encoded_jwt = jwt.encode(to_encode, JWT_SECRET_KEY, algorithm=JWT_ALGORITHM)
return encoded_jwt
@app.post("/token")
async def login_for_access_token(form_data: dict = Depends(oauth2_scheme)):
# Check username and password from database
user = form_data.get("username")
password = form_data.get("password")
if not user or not password:
raise HTTPException(status_code=400, detail="Incorrect username or password")
# Generate JWT token
access_token = create_access_token(data={"sub": user}, expires_delta=JWT_EXPIRATION)
return {"access_token": access_token, "token_type": "bearer"}
در این مرحله، یک سیستم ساده برای ورود و خروج کاربران با JWT را پیادهسازی کردیم. در قسمت بعدی از این آموزش، به ادامه توسعه این سیستم خواهیم پرداخت.
آقا این دوره دیگه ادامه نداره؟
میشه بزاری ادامشو؟
کاش یا دوره نمیزاشتید یا وقتی میزارید تا اخر ادامه بدید شما وقتی نمیتونید یه کاری رو تا اخر تموم کنید چرا دوره میزارید؟
این قسمت آخر بود؟
Post installation آرچ
و تایلینگ ویندو منیجرم یه ویدیو میسازی❤
از چه توزیعی استفاده میکنید ؟