refactor(submission): 删掉提交接口里走不到的验证码分支

captcha 在 CreateSubmissionSerializer 里是 required=False,视图里只有
data.get("captcha") 为真才校验,而前端只在注册表单发验证码,提交代码这
条路径从来不传,分支永远进不去。

验证码现在只服务注册流程。

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
2026-08-05 23:35:24 -06:00
parent 927f235537
commit 12c12b1840
2 changed files with 0 additions and 5 deletions

View File

@@ -39,7 +39,6 @@ class CreateSubmissionSerializer(serializers.Serializer):
code = serializers.CharField(max_length=1024 * 1024) code = serializers.CharField(max_length=1024 * 1024)
contest_id = serializers.IntegerField(required=False) contest_id = serializers.IntegerField(required=False)
problemset_id = serializers.IntegerField(required=False) problemset_id = serializers.IntegerField(required=False)
captcha = serializers.CharField(required=False)
class ShareSubmissionSerializer(serializers.Serializer): class ShareSubmissionSerializer(serializers.Serializer):

View File

@@ -14,7 +14,6 @@ from options.options import SysOptions
from problem.models import Problem from problem.models import Problem
from utils.api import APIView, AsyncAPIView, validate_serializer from utils.api import APIView, AsyncAPIView, validate_serializer
from utils.cache import cache from utils.cache import cache
from utils.captcha import Captcha
from utils.throttling import TokenBucket from utils.throttling import TokenBucket
from ..models import Submission from ..models import Submission
@@ -66,9 +65,6 @@ class SubmissionAPI(AsyncAPIView):
if not contest.problem_details_permission(request.user): if not contest.problem_details_permission(request.user):
hide_id = True 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) error = await sync_to_async(self.throttling)(request)
if error: if error:
return self.error(error) return self.error(error)