wealthtracker-backend / token_utils.py
Ryugen22's picture
Create token_utils.py
5a105e5 verified
raw
history blame contribute delete
567 Bytes
import jwt
import os
from datetime import datetime, timedelta, timezone
from dotenv import load_dotenv
load_dotenv()
SECRET = os.getenv("JWT_SECRET", "super_secret_key_change_me")
ALGORITHM = "HS256"
EXPIRY_HOURS = 72
def create_token(payload: dict) -> str:
data = payload.copy()
data["exp"] = datetime.now(timezone.utc) + timedelta(hours=EXPIRY_HOURS)
return jwt.encode(data, SECRET, algorithm=ALGORITHM)
def verify_token(token: str):
try:
return jwt.decode(token, SECRET, algorithms=[ALGORITHM])
except Exception:
return None