Prechádzať zdrojové kódy

访问接口增加时间戳控制,了全球化时间控制在一天内

chenshibin 4 rokov pred
rodič
commit
4b3a044e3e

+ 14 - 17
Controller/IotCoreController.py

@@ -52,7 +52,7 @@ class IotCoreView(View):
         language = request_dict.get('language', None)
 
         if serial_number and token and time_stamp and serial_number_code and device_version and language:
-            uid_code = CommonService.decode_data(serial_number_code)
+            serial_number_code = CommonService.decode_data(serial_number_code)
             token = int(CommonService.decode_data(token))
             time_stamp = int(time_stamp)
 
@@ -60,9 +60,8 @@ class IotCoreView(View):
             distance = now_time - time_stamp
             thingGroup = device_version + '_' + language
 
-            # if token != time_stamp and distance > 600: 暂时去掉延时
-            # if token != time_stamp or serial_number != serial_number_code :
-            #     return response.json(404)
+            if token != time_stamp or distance > 60000 or distance < -60000 or serial_number != serial_number_code:  # 为了全球化时间控制在一天内
+                return response.json(404)
 
             serial = serial_number[0:6]
 
@@ -114,31 +113,29 @@ class IotCoreView(View):
 
     def thing_regroup(self, request_dict, response, request):
         # 物品重新分组
-        # token = request_dict.get('token', None)
-        # time_stamp = request_dict.get('time_stamp', None)
+        token = request_dict.get('token', None)
+        time_stamp = request_dict.get('time_stamp', None)
         serial_number = request_dict.get('serial_number', None)
         device_version = request_dict.get('device_version', None)
         language = request_dict.get('language', None)
-        if not all([serial_number, device_version, language]):
+        if not all([serial_number, device_version, language, token, time_stamp]):
             return response.json(444)
 
         # 封装token认证
-        # token = int(CommonService.decode_data(token))
-        # time_stamp = int(time_stamp)
-        # now_time = int(time.time())
-        # distance = now_time - time_stamp
-        # if token != time_stamp and distance > 600: 暂时去掉延时
-        # if token != time_stamp or serial_number != serial_number_code :
-        #     return response.json(404)
-        # ip = CommonService.get_ip_address(request)
-        # region_id = Device_Region().get_device_region(ip)
+        token = int(CommonService.decode_data(token))
+        time_stamp = int(time_stamp)
+        now_time = int(time.time())
+        distance = now_time - time_stamp
+        if token != time_stamp or distance > 60000 or distance < -60000:  # 为了全球化时间控制在一天内
+            return response.json(404)
+        ip = CommonService.get_ip_address(request)
+        region_id = Device_Region().get_device_region(ip)
 
         thingName = 'Ansjer_Device_' + serial_number
         new_thingGroupName = (device_version + '_' + language).replace('.', '_')    # 物品组命名不能包含'.'
         # 调试参数
         # thingName = 'Ansjer_Device_00EBEX'
         # new_thingGroupName = 'C1Pro_V1_0_1_cn'
-        region_id = 1
         iotClient = IOTClient(region_id)
 
         try:

+ 1 - 1
Controller/RegionController.py

@@ -266,7 +266,7 @@ class RegionView(View):
             now_time = int(time.time())
             distance = now_time - time_stamp
 
-            if token != time_stamp or distance > 30000 or distance < 0:
+            if token != time_stamp or distance > 60000 or distance < -60000:  # 为了全球化时间控制在一天内
                 return response.json(404)
 
             lang_qs = LanguageModel.objects.filter(lang=type)

+ 3 - 3
Controller/SerialNumberController.py

@@ -102,7 +102,7 @@ class SerialNumberView(View):
             now_time = int(time.time())
             distance = now_time - time_stamp
 
-            if token != time_stamp or distance > 60000 or distance < 0:
+            if token != time_stamp or distance > 60000 or distance < -60000: #为了全球化时间控制在一天内
                 return response.json(404)
 
             redisObject = RedisObject()
@@ -193,7 +193,7 @@ class SerialNumberView(View):
             now_time = int(time.time())
             distance = now_time - time_stamp
 
-            if token != time_stamp or distance > 60000 or distance < 0:
+            if token != time_stamp or distance > 60000 or distance < -60000: #为了全球化时间控制在一天内
                 return response.json(404)
 
             mark = serial_number[6:9]
@@ -312,7 +312,7 @@ class SerialNumberView(View):
             now_time = int(time.time())
             distance = now_time - time_stamp
 
-            if token != time_stamp or distance > 300 or distance < 0:
+            if token != time_stamp or distance > 60000 or distance < -60000:  #为了全球化时间控制在一天内
                 return response.json(404)
 
             mark = serial_number[6:9]