Spaces:
Sleeping
Sleeping
| from datetime import datetime, timedelta | |
| from jose import JWTError, jwt | |
| SECRET_KEY = "smartstudy_secret_key_2024_change_in_production" | |
| ALGORITHM = "HS256" | |
| ACCESS_TOKEN_EXPIRE_HOURS = 24 | |
| def create_token(data: dict) -> str: | |
| payload = data.copy() | |
| payload["exp"] = datetime.utcnow() + timedelta(hours=ACCESS_TOKEN_EXPIRE_HOURS) | |
| return jwt.encode(payload, SECRET_KEY, algorithm=ALGORITHM) | |
| def decode_token(token: str) -> dict: | |
| try: | |
| return jwt.decode(token, SECRET_KEY, algorithms=[ALGORITHM]) | |
| except JWTError: | |
| return None |