feat:验证码(选择图形验证码)接口开发
This commit is contained in:
@@ -1,41 +0,0 @@
|
||||
package com.xiang.xservice.auth.server.controller;
|
||||
|
||||
import com.xiang.xservice.auth.service.enums.CaptchaTypeEnum;
|
||||
import com.xiang.xservice.auth.service.service.CaptchaGenerateFactory;
|
||||
import com.xiang.xservice.basic.common.resp.Result;
|
||||
import com.xiang.xservice.basic.utils.RandomCodeUtils;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
@Slf4j
|
||||
@RestController
|
||||
@RequiredArgsConstructor
|
||||
public class CaptchaImageController {
|
||||
|
||||
private final CaptchaGenerateFactory captchaGenerateFactory;
|
||||
|
||||
@PostMapping("/public/captchaImage")
|
||||
public Result<String> getCaptchaImage() {
|
||||
try {
|
||||
String randomCode = RandomCodeUtils.getNumberRandomCode(1);
|
||||
String captchaImage;
|
||||
if (StringUtils.isBlank(randomCode)) {
|
||||
captchaImage = captchaGenerateFactory.get(CaptchaTypeEnum.NORMAL_CAPTCHA_IMAGE.getType()).getCaptchaImage();
|
||||
} else {
|
||||
try {
|
||||
int i = Integer.parseInt(randomCode);
|
||||
captchaImage = captchaGenerateFactory.get(i).getCaptchaImage();
|
||||
} catch (Exception e) {
|
||||
captchaImage = captchaGenerateFactory.get(CaptchaTypeEnum.NORMAL_CAPTCHA_IMAGE.getType()).getCaptchaImage();
|
||||
}
|
||||
}
|
||||
return Result.success(captchaImage);
|
||||
} catch (Exception e) {
|
||||
log.error("获取验证码失败", e);
|
||||
}
|
||||
return Result.error();
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,59 @@
|
||||
package com.xiang.xservice.auth.server.controller;
|
||||
|
||||
import com.xiang.xservice.auth.api.dto.req.CaptchaImageRequest;
|
||||
import com.xiang.xservice.auth.api.dto.resp.CaptchaDTO;
|
||||
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 lombok.RequiredArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
import org.springframework.web.bind.annotation.RequestBody;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
import javax.validation.Valid;
|
||||
import javax.validation.constraints.NotNull;
|
||||
|
||||
@Slf4j
|
||||
@RestController
|
||||
@RequiredArgsConstructor
|
||||
public class ValidationCodeController {
|
||||
|
||||
private final ValidCodeGenerateFactory validCodeGenerateFactory;
|
||||
|
||||
@PostMapping("/public/captchaImage")
|
||||
public Result<CaptchaDTO> getCaptchaImage(@RequestBody @NotNull(message = "请求参数不能为空") @Valid CaptchaImageRequest request) {
|
||||
try {
|
||||
// String randomCode = RandomCodeUtils.getNumberRandomCode(1);
|
||||
String randomCode = "1";
|
||||
CaptchaDTO captchaImage;
|
||||
if (StringUtils.isBlank(randomCode)) {
|
||||
captchaImage = validCodeGenerateFactory.get(CaptchaTypeEnum.NORMAL_CAPTCHA_IMAGE.getType()).getCaptchaImage(request);
|
||||
} else {
|
||||
try {
|
||||
int i = Integer.parseInt(randomCode);
|
||||
captchaImage = validCodeGenerateFactory.get(i).getCaptchaImage(request);
|
||||
} catch (Exception e) {
|
||||
log.error("获取验证码失败,获取默认验证码", e);
|
||||
captchaImage = validCodeGenerateFactory.get(CaptchaTypeEnum.NORMAL_CAPTCHA_IMAGE.getType()).getCaptchaImage(request);
|
||||
}
|
||||
}
|
||||
return Result.success(captchaImage);
|
||||
} catch (Exception e) {
|
||||
log.error("获取验证码失败", e);
|
||||
}
|
||||
return Result.error();
|
||||
}
|
||||
|
||||
@PostMapping("/public/getSmsCode")
|
||||
public Result<Void> getSmsCode(@RequestBody @NotNull(message = "请求参数不能为空") @Valid CaptchaImageRequest request) {
|
||||
try {
|
||||
validCodeGenerateFactory.get(CaptchaTypeEnum.NUMBER_CAPTCHA_CODE.getType()).getCaptchaImage(request);
|
||||
return Result.success();
|
||||
} catch (Exception e) {
|
||||
log.error("获取验证码失败", e);
|
||||
}
|
||||
return Result.error();
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user