From c369b5478c9ba912bad71576a6920249766e0b83 Mon Sep 17 00:00:00 2001 From: ibuler Date: Mon, 25 Sep 2023 21:49:47 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E4=BF=AE=E5=A4=8D=E6=9A=B4=E5=8A=9B?= =?UTF-8?q?=E6=A0=A1=E9=AA=8C=E9=AA=8C=E8=AF=81=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- apps/common/utils/verify_code.py | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/apps/common/utils/verify_code.py b/apps/common/utils/verify_code.py index b21e43b26..ab191af15 100644 --- a/apps/common/utils/verify_code.py +++ b/apps/common/utils/verify_code.py @@ -26,6 +26,7 @@ class SendAndVerifyCodeUtil(object): self.target = target self.backend = backend self.key = key or self.KEY_TMPL.format(target) + self.verify_key = self.key + '_verify' self.timeout = settings.VERIFY_CODE_TTL if timeout is None else timeout self.other_args = kwargs @@ -47,6 +48,11 @@ class SendAndVerifyCodeUtil(object): raise def verify(self, code): + times = cache.get(self.verify_key, 0) + if times >= 3: + self.__clear() + raise CodeError + cache.set(self.verify_key, times + 1, timeout=self.timeout) right = cache.get(self.key) if not right: raise CodeExpired