Pārlūkot izejas kodu

shopify官网修改密码

linhaohong 9 mēneši atpakaļ
vecāks
revīzija
a673929be7
1 mainītis faili ar 20 papildinājumiem un 2 dzēšanām
  1. 20 2
      Controller/ShopifyController.py

+ 20 - 2
Controller/ShopifyController.py

@@ -367,6 +367,23 @@ class ShopifyView(View):
         if not all([email, password, authcode]):
             return response.json(444)
         try:
+
+            data_valid = DataValid()
+            if data_valid.email_validate(email) is not True:
+                return response.json(105)
+            re_flag = data_valid.password_validate(password)
+
+            has_upper = bool(re.search(r"[A-Z]", password))  # 大写字母
+            has_lower = bool(re.search(r"[a-z]", password))  # 小写字母
+            has_digit = bool(re.search(r"[0-9]", password))  # 数字
+            has_special = bool(re.search(r"[!@#$%^&*()_+\-=\[\]{}|;:'\",.<>?/]", password))  # 特殊字符
+
+            # 至少包含任意两类字符
+            categories = sum([has_upper, has_lower, has_digit, has_special])
+
+            if re_flag is not True and categories > 2:
+                return response.json(109)
+
             reds = RedisObject()
             identifyingCode = reds.get_data(key=email + '_forgetPwdResetCode')
             # 判断验证码是否过期
@@ -378,7 +395,8 @@ class ShopifyView(View):
 
             user_qs = Device_User.objects.filter(Q(username=email) | Q(userEmail=email))
             if not user_qs.exists():
-                return response.json(174)
+                return response.json(173)
+
             password = make_password(password)
             user_qs.update(password=password)
             reds.del_data(key=email + '_forgetPwdResetCode')
@@ -389,7 +407,7 @@ class ShopifyView(View):
     @staticmethod
     def verify_authcode(request_dict, response):
         """
-        在修改密码的时候改变验证码
+        在修改密码的时候验证验证码
         """
         email = request_dict.get("email", None)
         authcode = request_dict.get("authCode", None)