UidTokenObject.py 922 B

12345678910111213141516171819202122232425262728293031323334353637
  1. #!/usr/bin/env python3
  2. # -*- coding: utf-8 -*-
  3. """
  4. @Copyright (C) ansjer cop Video Technology Co.,Ltd.All rights reserved.
  5. @AUTHOR: ASJRD018
  6. @NAME: AnsjerFormal
  7. @software: PyCharm
  8. @DATE: 2018/12/5 11:52
  9. @Version: python3.6
  10. @MODIFY DECORD:ansjer dev
  11. @file: UidTokenObject.py
  12. @Contact: chanjunkai@163.com
  13. """
  14. from Ansjer.config import UID_TOKEN_KEY
  15. import jwt
  16. class UidTokenObject:
  17. def __init__(self, token=None):
  18. self.token = token
  19. self.UID = ''
  20. self.flag = self.valid()
  21. def valid(self):
  22. token = self.token
  23. if self.token is None:
  24. return False
  25. res = jwt.decode(token, UID_TOKEN_KEY, algorithms='HS256')
  26. UID = res.get('uid', None)
  27. if UID is None:
  28. return False
  29. self.UID = UID
  30. def generate(self, data={}):
  31. token = jwt.encode(data, UID_TOKEN_KEY, algorithm='HS256').decode('utf-8')
  32. return token