Prechádzať zdrojové kódy

2024/01/29 添加身份校验

wk 1 rok pred
rodič
commit
163a78a194

+ 1 - 2
指令检查节点/check_command_XmSgj.py

@@ -582,8 +582,7 @@ class CommandChecker:
                 for dict in res:
                     if dict['upload_statu'] is None and dict['row_number() over(order by queue_time)'] == 2:
                         print("\n")
-                        print("===============================排队为1 推送排队详情=========================" + str(
-                            datetime.datetime.now()))
+                        print("===============================排队为1 推送排队详情=========================" + str(datetime.datetime.now()))
                         headers_dict, park_surplus_dict, pickup_queue_dict, phone_out_dict = self.get_phone_request_data(
                             dict['car_number'], dict['primary_key'], dict['unit'], 'queue 1')
                         self.push_http_request(self._queue_url, pickup_queue_dict, headers_dict)

+ 29 - 0
指令检查节点/node.py

@@ -1,3 +1,5 @@
+import hashlib
+import socketserver
 import sys
 
 import json
@@ -104,8 +106,35 @@ class MyHttpRequestHandler(BaseHTTPRequestHandler):
         self.send_header("Access-Control-Allow-Methods", "*")
         self.send_header("Access-Control-Allow-Headers", "Authorization, Content-Type")
 
+    def check(self,Appid,Time,Sign):
+        self.Appid = '14249167070745034'
+        self.AppSecret = 'vN2dZq2C3f3EAoiURrIDbjFWtPPlTetB'
+        sign_iphone = Appid + Time + self.AppSecret
+        hl_iphone = hashlib.md5()
+        hl_iphone.update(sign_iphone.encode(encoding='utf-8'))
+        sign_iphone = hl_iphone.hexdigest()
+        if sign_iphone == Sign:
+            return True
+        return False
     def do_POST(self):
         print('do_post:')
+        path = str(self.path)
+        if path != '/api/operateOutScene/sgjQueryRankMsg' :
+            code, msg, data = -200, "error", "地址错误!"
+            self.send_write(code, msg, data)
+            return
+        try:
+            Appid = self.headers['Appid']
+            Time = self.headers['Time']
+            Sign = self.headers['Sign']
+            if self.check(Appid,Time,Sign) is False:
+                code, msg, data = -200, "error", "验签失败!"
+                self.send_write(code, msg, data)
+                return
+        except Exception:
+            code,msg,data = -200,"error","验签失败!"
+            self.send_write(code,msg,data)
+            return
         datas = self.rfile.read(int(self.headers['content-length']))  # 固定格式,获取表单提交的数据
         self.send_response(200)  # 返回状态码
         self.end_headers()  # 返回响应头结束