From 129cceade954c6e77a0f6736c2a134f8c56e00c8 Mon Sep 17 00:00:00 2001 From: DarkSky <25152247+darkskygit@users.noreply.github.com> Date: Thu, 14 Nov 2024 18:22:02 +0800 Subject: [PATCH] feat: add compatible for captcha request with challenge (#8827) --- .../backend/server/src/plugins/captcha/service.ts | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/packages/backend/server/src/plugins/captcha/service.ts b/packages/backend/server/src/plugins/captcha/service.ts index d3ebafdfd0..7b8f1c3986 100644 --- a/packages/backend/server/src/plugins/captcha/service.ts +++ b/packages/backend/server/src/plugins/captcha/service.ts @@ -88,15 +88,14 @@ export class CaptchaService { async verifyRequest(credential: Credential, req: Request) { const challenge = credential.challenge; + let resource: string | null = null; if (typeof challenge === 'string' && challenge) { - const resource = await this.token + resource = await this.token .getToken(TokenType.Challenge, challenge) - .then(token => token?.credential); - - if (!resource) { - throw new CaptchaVerificationFailed('Invalid Challenge'); - } + .then(token => token?.credential || null); + } + if (resource) { const isChallengeVerified = await this.verifyChallengeResponse( credential.token, resource