refactor(submission): 删掉提交接口里走不到的验证码分支
captcha 在 CreateSubmissionSerializer 里是 required=False,视图里只有
data.get("captcha") 为真才校验,而前端只在注册表单发验证码,提交代码这
条路径从来不传,分支永远进不去。
验证码现在只服务注册流程。
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
@@ -39,7 +39,6 @@ class CreateSubmissionSerializer(serializers.Serializer):
|
||||
code = serializers.CharField(max_length=1024 * 1024)
|
||||
contest_id = serializers.IntegerField(required=False)
|
||||
problemset_id = serializers.IntegerField(required=False)
|
||||
captcha = serializers.CharField(required=False)
|
||||
|
||||
|
||||
class ShareSubmissionSerializer(serializers.Serializer):
|
||||
|
||||
@@ -14,7 +14,6 @@ from options.options import SysOptions
|
||||
from problem.models import Problem
|
||||
from utils.api import APIView, AsyncAPIView, validate_serializer
|
||||
from utils.cache import cache
|
||||
from utils.captcha import Captcha
|
||||
from utils.throttling import TokenBucket
|
||||
|
||||
from ..models import Submission
|
||||
@@ -66,9 +65,6 @@ class SubmissionAPI(AsyncAPIView):
|
||||
if not contest.problem_details_permission(request.user):
|
||||
hide_id = True
|
||||
|
||||
if data.get("captcha"):
|
||||
if not Captcha(request).check(data["captcha"]):
|
||||
return self.error("Invalid captcha")
|
||||
error = await sync_to_async(self.throttling)(request)
|
||||
if error:
|
||||
return self.error(error)
|
||||
|
||||
Reference in New Issue
Block a user