123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869 |
- # @Author : Rocky
- # @File : InitController.py
- # @Time : 2023/4/11 17:26
- import ssl
- from django.http import HttpResponse
- from django.views import View
- from Model.models import Device_Info, SceneLog
- from Object.RedisObject import RedisObject
- from Object.ResponseObject import ResponseObject
- import redis
- class InitView(View):
- def get(self, request, *args, **kwargs):
- request.encoding = 'utf-8'
- operation = kwargs.get('operation')
- return self.validation(request.GET, operation)
- def post(self, request, *args, **kwargs):
- request.encoding = 'utf-8'
- operation = kwargs.get('operation')
- return self.validation(request.POST, operation)
- def validation(self, request_dict, operation):
- if operation == 'health-check': # 负载均衡器健康检测接口
- return self.health_check(request_dict)
- elif operation == 'oci_redis_test':
- return self.oci_redis_test(request_dict)
- @staticmethod
- def health_check(request_dict):
- try:
- redis_obj = RedisObject()
- redis_obj.set_data('health_check', 1)
- response = ResponseObject()
- Device_Info.objects.filter().values('id').first()
- SceneLog.objects.filter().values('id').first()
- return response.json(0)
- except Exception as e:
- return HttpResponse(repr(e), status=500)
- @staticmethod
- def oci_redis_test(request_dict):
- try:
- key = request_dict.get('key', None)
- value = request_dict.get('value', None)
- response = ResponseObject()
- redis_host = 'amaaaaaayszequiamxr7cdpparig3ptmytvde5vvnz6n7gceo4232sbhhlsa-p.redis.us-phoenix-1.oci.oraclecloud.com'
- # 启用TLS的配置
- ssl_context = ssl.create_default_context()
- # 创建Redis连接
- redis_client = redis.StrictRedis(
- host=redis_host,
- ssl=True,
- ssl_cert_reqs=None
- )
- redis_client.set(key, value)
- redis_value = redis_client.get(key)
- res = {
- 'redis_value': redis_value
- }
- return response.json(0, res)
- except Exception as e:
- return HttpResponse(repr(e), status=500)
|