InitController.py 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637
  1. # @Author : Rocky
  2. # @File : InitController.py
  3. # @Time : 2023/4/11 17:26
  4. from django.http import HttpResponse
  5. from django.views import View
  6. from Model.models import Device_Info, SceneLog
  7. from Object.RedisObject import RedisObject
  8. from Object.ResponseObject import ResponseObject
  9. class InitView(View):
  10. def get(self, request, *args, **kwargs):
  11. request.encoding = 'utf-8'
  12. operation = kwargs.get('operation')
  13. return self.validation(request.GET, operation)
  14. def post(self, request, *args, **kwargs):
  15. request.encoding = 'utf-8'
  16. operation = kwargs.get('operation')
  17. return self.validation(request.POST, operation)
  18. def validation(self, request_dict, operation):
  19. if operation == 'health-check': # 负载均衡器健康检测接口
  20. return self.health_check(request_dict)
  21. @staticmethod
  22. def health_check(request_dict):
  23. try:
  24. redis_obj = RedisObject()
  25. response = ResponseObject()
  26. Device_Info.objects.filter().values('id').first()
  27. SceneLog.objects.filter().values('id').first()
  28. return response.json(0)
  29. except Exception as e:
  30. return HttpResponse(repr(e), status=500)