from datetime import datetime, timedelta from typing import Union from controllers.JWT import secret_key import jwt async def generate_token(username: str) -> str: expiration = datetime.utcnow() + timedelta(minutes=30) payload = {"username": username, "exp": expiration} return jwt.encode(payload, secret_key, algorithm="HS256") async def get_token_from_cookie(cookie: str) -> Union[str, None]: for item in cookie.split("; "): if "token=" not in item: continue token = item.replace("token=", "") return token return None