fix: handle err=40005(USED) as already-received, retry on Sign Error
All checks were successful
Build and Deploy / deploy-front (push) Successful in 7s
Build and Deploy / deploy-back (push) Successful in 20s

This commit is contained in:
hyoseung 2026-05-19 18:03:28 +09:00
parent 49f77c2a29
commit ae3bd8b72a

View File

@ -148,6 +148,10 @@ export class WosService {
if (attempt < maxRetries) continue;
return { success: false, message: `캡차 인식 실패 (${maxRetries}회 시도)`, err_code: data.err_code };
}
if (data.code !== 0 && (data.err_code === 0 || data.msg === 'Sign Error')) {
if (attempt < maxRetries) continue;
return { success: false, message: 'Sign Error (캡차 오인식)', err_code: data.err_code };
}
return { success: false, message: data.msg || `실패 (${data.err_code})`, err_code: data.err_code };
}
@ -180,7 +184,7 @@ export class WosService {
result = { success: false, message: err.message || '오류 발생' };
}
if (result.err_code === 40008 || result.err_code === 40011) {
if (result.err_code === 40008 || result.err_code === 40011 || result.err_code === 40005) {
result = { success: true, message: ALREADY_MSG, err_code: result.err_code };
}
@ -270,7 +274,7 @@ export class WosService {
const result = await this.redeemOne(user.fid, code);
const finalResult =
result.err_code === 40008 || result.err_code === 40011
result.err_code === 40008 || result.err_code === 40011 || result.err_code === 40005
? { success: true, message: ALREADY_MSG }
: result;