DownloadController.py 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  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: AnserjRS
  7. @software: PyCharm
  8. @DATE: 2018/8/21 17:48
  9. @Version: python3.6
  10. @MODIFY DECORD:ansjer dev
  11. @file: DownloadController.py
  12. @Contact: chanjunkai@163.com
  13. """
  14. from django.views.decorators.csrf import csrf_exempt
  15. from Service.CommonService import CommonService
  16. from Object.ResponseObject import ResponseObject
  17. from ratelimit.decorators import ratelimit
  18. from django.views.generic import TemplateView
  19. from django.utils.decorators import method_decorator
  20. from Object.TokenObject import TokenObject
  21. import json
  22. class SignOtaUrl(TemplateView):
  23. @method_decorator(csrf_exempt)
  24. def dispatch(self, *args, **kwargs):
  25. return super(SignOtaUrl, self).dispatch(*args, **kwargs)
  26. def post(self, request, *args, **kwargs):
  27. request.encoding = 'utf-8'
  28. request_dict = json.loads(request.body.decode('utf-8'))
  29. return self.validation(request_dict, *args, **kwargs)
  30. def get(self, request, *args, **kwargs):
  31. request.encoding = 'utf-8'
  32. request_dict = request.GET
  33. return self.validation(request_dict, *args, **kwargs)
  34. def validation(self, request_dict, *args, **kwargs):
  35. token = request_dict.get('token', None)
  36. response = ResponseObject()
  37. if token is not None:
  38. tko = TokenObject(token)
  39. tko.valid()
  40. code = tko.code
  41. response.lang = tko.lang
  42. if code == 0:
  43. oid = tko.oid
  44. return response.json(0,{'url':''})
  45. else:
  46. return response.json(code)
  47. else:
  48. return response.json(444, 'token')