فهرست منبع

更换ratelimit

locky 2 سال پیش
والد
کامیت
ba298e4b8c
4فایلهای تغییر یافته به همراه20 افزوده شده و 24 حذف شده
  1. 1 1
      Ansjer/local_config/local_settings.py
  2. 2 3
      Controller/AccessLog.py
  3. 16 19
      Controller/UserController.py
  4. 1 1
      requirements.txt

+ 1 - 1
Ansjer/local_config/local_settings.py

@@ -11,7 +11,7 @@ DEFAULT_AUTO_FIELD = 'django.db.models.AutoField'
 ADDR_URL = []
 ANONYMOUS_USER_ID = -1  # 支持匿名用户
 
-STATIC_URL = '/static/'
+STATIC_URL = '/static/static/'
 STATICFILES_DIRS = (os.path.join(BASE_DIR,'static'),)
 
 # 上传路径根目录

+ 2 - 3
Controller/AccessLog.py

@@ -4,8 +4,7 @@ import simplejson as json
 from django.utils.decorators import method_decorator
 from django.views.decorators.csrf import csrf_exempt
 from django.views.generic.base import View
-from ratelimit.decorators import ratelimit
-
+from ratelimit import limits
 from Model.models import Access_Log
 from Object.ResponseObject import ResponseObject
 from Object.TokenObject import TokenObject
@@ -159,7 +158,7 @@ class AccessLog(View):
         return response.json(0, {'datas': [], 'count': 0})
 
 
-@ratelimit(key='ip', rate='3/m')
+@limits(calls=2, period=60)
 def statisticsPath(request):
     request.encoding = 'utf-8'
     if request.method == 'GET':

+ 16 - 19
Controller/UserController.py

@@ -35,8 +35,7 @@ from django.views.decorators.csrf import csrf_exempt
 from django.views.generic import TemplateView
 from django.views.generic import View
 from jwt.algorithms import RSAAlgorithm
-from ratelimit.decorators import ratelimit
-
+from ratelimit import limits
 from Ansjer.config import AuthCode_Expire, SERVER_DOMAIN, APNS_CONFIG, JPUSH_CONFIG, FCM_CONFIG, TUTK_PUSH_DOMAIN
 from Ansjer.config import BASE_DIR, CONFIG_US, CONFIG_EUR, CONFIG_INFO, SERVER_DOMAIN_EUR, CONFIG_CN
 from Controller.CheckUserData import DataValid, date_handler, RandomStr
@@ -62,7 +61,7 @@ class authCodeView(TemplateView):
         # testtest11111111111111
         return super(authCodeView, self).dispatch(*args, **kwargs)
 
-    @ratelimit(key='ip', rate='2/m')
+    @limits(calls=2, period=60)
     def post(self, request, *args, **kwargs):
         request.encoding = 'utf-8'
         lang = request.POST.get('language', None)
@@ -74,7 +73,7 @@ class authCodeView(TemplateView):
         useremail = request.POST.get('userEmail', None)
         return self.ValidationError(username, useremail, response)
 
-    # @ratelimit(key='ip', rate='2/m')
+    # @limits(calls=2, period=60)
     def get(self, request, *args, **kwargs):
         # Device_User.objects.filter(userEmail='chanjunkai@163.com').delete()
         request.encoding = 'utf-8'
@@ -499,7 +498,7 @@ class ForgetPwdView(TemplateView):
     def dispatch(self, *args, **kwargs):
         return super(ForgetPwdView, self).dispatch(*args, **kwargs)
 
-    @ratelimit(key='ip', rate='1/m')
+    @limits(calls=2, period=60)
     def get(self, request, *args, **kwargs):
         request.encoding = 'utf-8'
         response = ResponseObject()
@@ -509,7 +508,7 @@ class ForgetPwdView(TemplateView):
         userName = request.GET.get('userName', None)
         return self.ValidationError(userName, response)
 
-    @ratelimit(key='ip', rate='1/m')
+    @limits(calls=2, period=60)
     def post(self, request):
         request.encoding = 'utf-8'
         userName = request.POST.get('userName', None)
@@ -756,7 +755,7 @@ class v2authCodeView(TemplateView):
     def dispatch(self, *args, **kwargs):
         return super(v2authCodeView, self).dispatch(*args, **kwargs)
 
-    @ratelimit(key='ip', rate='2/m')
+    @limits(calls=2, period=60)
     def post(self, request, *args, **kwargs):
         request.encoding = 'utf-8'
         lang = request.POST.get('lang', None)
@@ -771,7 +770,7 @@ class v2authCodeView(TemplateView):
                 return response.json(5)
         return self.ValidationError(request_dict, response)
 
-    @ratelimit(key='ip', rate='2/m')
+    @limits(calls=2, period=60)
     def get(self, request, *args, **kwargs):
         # Device_User.objects.filter(userEmail='chanjunkai@163.com').delete()
         request.encoding = 'utf-8'
@@ -1330,7 +1329,7 @@ class v2forgetPwdCodeView(TemplateView):
     def dispatch(self, *args, **kwargs):
         return super(v2forgetPwdCodeView, self).dispatch(*args, **kwargs)
 
-    @ratelimit(key='ip', rate='1/m')
+    @limits(calls=2, period=60)
     def get(self, request, *args, **kwargs):
         request.encoding = 'utf-8'
         request_dict = request.GET
@@ -1341,7 +1340,7 @@ class v2forgetPwdCodeView(TemplateView):
             return response.json(5)
         return self.ValidationError(request_dict, response)
 
-    @ratelimit(key='ip', rate='1/m')
+    @limits(calls=2, period=60)
     def post(self, request):
         request.encoding = 'utf-8'
         request_dict = request.POST
@@ -1840,7 +1839,7 @@ class v2LoginView(TemplateView):
     def dispatch(self, *args, **kwargs):
         return super(v2LoginView, self).dispatch(*args, **kwargs)
 
-    @ratelimit(key='ip', rate='5/m')
+    @limits(calls=2, period=60)
     def post(self, request, *args, **kwargs):
         request.encoding = 'utf-8'
         request_dict = request.POST
@@ -1851,7 +1850,6 @@ class v2LoginView(TemplateView):
             return response.json(5)
         return self.validates(request_dict, response)
 
-    # @ratelimit(key='ip', rate='5/m')
     def get(self, request, *args, **kwargs):
         print("进来了")
         request.encoding = 'utf-8'
@@ -1940,7 +1938,7 @@ class noPasslogin(TemplateView):
     def dispatch(self, *args, **kwargs):
         return super(noPasslogin, self).dispatch(*args, **kwargs)
 
-    @ratelimit(key='ip', rate='5/m')
+    @limits(calls=2, period=60)
     def post(self, request, *args, **kwargs):
         request.encoding = 'utf-8'
         request_dict = request.POST
@@ -1951,7 +1949,6 @@ class noPasslogin(TemplateView):
             return response.json(5)
         return self.validates(request_dict, response)
 
-    # @ratelimit(key='ip', rate='5/m')
     def get(self, request, *args, **kwargs):
         print("进来了")
         request.encoding = 'utf-8'
@@ -2031,7 +2028,7 @@ class v3LoginView(TemplateView):
     def dispatch(self, *args, **kwargs):
         return super(v3LoginView, self).dispatch(*args, **kwargs)
 
-    @ratelimit(key='ip', rate='5/m')
+    @limits(calls=2, period=60)
     def post(self, request, *args, **kwargs):
         request.encoding = 'utf-8'
         request_dict = request.POST
@@ -2760,7 +2757,7 @@ class OauthAuthCodeView(TemplateView):
     def dispatch(self, *args, **kwargs):
         return super(OauthAuthCodeView, self).dispatch(*args, **kwargs)
 
-    @ratelimit(key='ip', rate='2/m')
+    @limits(calls=2, period=60)
     def post(self, request, *args, **kwargs):
         request.encoding = 'utf-8'
         lang = request.POST.get('lang', None)
@@ -2775,7 +2772,7 @@ class OauthAuthCodeView(TemplateView):
                 return response.json(5)
         return self.ValidationError(request_dict, response)
 
-    @ratelimit(key='ip', rate='2/m')
+    @limits(calls=2, period=60)
     def get(self, request, *args, **kwargs):
         # Device_User.objects.filter(userEmail='chanjunkai@163.com').delete()
         request.encoding = 'utf-8'
@@ -3647,7 +3644,7 @@ class loginCodeView(View):
     def dispatch(self, *args, **kwargs):
         return super(loginCodeView, self).dispatch(*args, **kwargs)
 
-    @ratelimit(key='ip', rate='2/m')
+    @limits(calls=2, period=60)
     def post(self, request, *args, **kwargs):
         request.encoding = 'utf-8'
         lang = request.POST.get('lang', None)
@@ -3662,7 +3659,7 @@ class loginCodeView(View):
                 return response.json(5)
         return self.validate(request_dict, response)
 
-    @ratelimit(key='ip', rate='2/m')
+    @limits(calls=2, period=60)
     def get(self, request, *args, **kwargs):
         request.encoding = 'utf-8'
         lang = request.GET.get('lang', None)

+ 1 - 1
requirements.txt

@@ -56,7 +56,7 @@ pycryptodomex==3.15.0
 pyfcm==1.5.4
 Pygments==2.13.0
 pyipip==0.1.1
-PyJWT==1.7.1
+PyJWT==2.6.0
 pymongo==4.3.3
 pyOpenSSL==22.0.0
 pyparsing==3.0.9