fix:手机验证码

This commit is contained in:
xiang
2025-09-06 22:57:47 +08:00
parent 813eec5e7f
commit d887faea42
5 changed files with 23 additions and 4 deletions

View File

@@ -2,9 +2,13 @@ package com.xiang;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.context.properties.ConfigurationPropertiesScan;
import org.springframework.security.config.annotation.method.configuration.EnableMethodSecurity;
@SpringBootApplication
@ConfigurationPropertiesScan(basePackages = {
"com.xiang.xservice.basic.xservice.aliyun.config"
})
@EnableMethodSecurity(prePostEnabled = true)
public class AuthApplication {
public static void main(String[] args) {

View File

@@ -6,6 +6,7 @@ import com.xiang.xservice.auth.service.enums.CaptchaTypeEnum;
import com.xiang.xservice.auth.service.service.ValidCodeGenerateFactory;
import com.xiang.xservice.basic.common.resp.Result;
import com.xiang.xservice.basic.utils.RandomCodeUtils;
import com.xiang.xservice.basic.xservice.aliyun.smscode.ISmsCodeService;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
@@ -23,6 +24,7 @@ import java.util.Objects;
public class ValidationCodeController {
private final ValidCodeGenerateFactory validCodeGenerateFactory;
private final ISmsCodeService smsCodeService;
@PostMapping("/public/captchaImage")
public Result<CaptchaDTO> getCaptchaImage(@RequestBody @NotNull(message = "请求参数不能为空") @Valid CaptchaImageRequest request) {
@@ -53,11 +55,13 @@ public class ValidationCodeController {
@PostMapping("/public/getSmsCode")
public Result<Void> getSmsCode(@RequestBody @NotNull(message = "请求参数不能为空") @Valid CaptchaImageRequest request) {
if (Objects.isNull(request.getNumber())) {
request.setNumber(4);
request.setNumber(6);
}
try {
validCodeGenerateFactory.get(CaptchaTypeEnum.NUMBER_CAPTCHA_CODE.getType()).getCaptchaImage(request);
CaptchaDTO captchaImage = validCodeGenerateFactory.get(CaptchaTypeEnum.NUMBER_CAPTCHA_CODE.getType()).getCaptchaImage(request);
String code = captchaImage.getCaptchaImageCode();
smsCodeService.asyncSendPhoneValidCode4DaXiangNet(request.getUsername(), code);
return Result.success();
} catch (Exception e) {
log.error("获取验证码失败", e);

View File

@@ -39,4 +39,9 @@ user:
# https://oauth.pstmn.io/v1/callback
# 移动端 APP 自定义 Scheme
# myapp://callback
redirectUrl: http://localhost:8080/login/oauth2/code/oauth-client-init
redirectUrl: http://localhost:8080/login/oauth2/code/oauth-client-init
aliyun:
auth:
accessKeyId: LTAI5tDMjaVF8Bbqcpp4dmvP
accessKeySecret: nkmnaNjWQy5984C5kjyS0oDmdMKGQd