| 12345678910111213141516171819202122232425262728293031 | import jwtimport datetimefrom jwt import exceptionsfrom django.conf import settingsJWT_SALT = "ds()udsjo@jlsdosjf)wjd_#(#)$"def create_token(payload):    headers = {        "type": "jwt",        "alg": "HS256"    }    payload['exp'] = datetime.datetime.utcnow() + datetime.timedelta(seconds=settings.JWT_TIME)    result = jwt.encode(payload=payload, key=JWT_SALT, algorithm="HS256", headers=headers)    return resultdef parse_payload(token):    result = {"status": False, "data": None, "error": None}    try:        verified_payload = jwt.decode(token, JWT_SALT, algorithms="HS256", verify=True)        result["status"] = True        result['data'] = verified_payload    except exceptions.ExpiredSignatureError:        result['err'] = 'Token Expired'    except jwt.DecodeError:        result['err'] = 'Token Authentication Failed'    except jwt.InvalidTokenError:        result['err'] = 'Illegal Token'    return result
 |