UidTokenObject.py 1.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  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 AnsjerPush.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.channel = ''
  21. self.flag = self.valid()
  22. def valid(self):
  23. token = self.token
  24. if self.token is None:
  25. return False
  26. res = jwt.decode(token, UID_TOKEN_KEY, algorithms='HS256')
  27. print(res)
  28. UID = res.get('uid', None)
  29. channel = res.get('channel', None)
  30. if UID is None:
  31. return False
  32. self.UID = UID
  33. self.channel = channel
  34. def generate(self, data={}):
  35. token = jwt.encode(data, UID_TOKEN_KEY, algorithm='HS256').decode('utf-8')
  36. self.token=token
  37. return token