· 7 years ago · Jun 22, 2018, 09:06 PM
1from itsdangerous import (TimedJSONWebSignatureSerializer as Serializer,
2 BadSignature, SignatureExpired)
3
4
5SECRET_KEY = ''
6
7
8def generate_auth_token():
9 data = {'user_id': '1', 'username': 'xxx'}
10 s = Serializer(SECRET_KEY, expires_in=60 * 60 * 24 * 7)
11 token = s.dumps(data)
12 return token.decode()
13
14
15def verify_token(token):
16 serial = Serializer(SECRET_KEY)
17 try:
18 # verify_data = serial.loads(token)
19 data = serial.loads(token)
20 print(data)
21 except SignatureExpired:
22 # valid token, but expired
23 return False
24 except BadSignature:
25 # invalid token
26 return False
27 return True
28
29
30if __name__ == '__main__':
31 token = generate_auth_token()
32 verify_token(token)