我在使用验证@RequestBody的项目中遇到问题
implementation("org.springframework.boot:spring-boot-starter-validation")
我的DTO如下所示:
import javax.validation.constraints.Email
import javax.validation.constraints.Pattern
class LoginDto(
@Email
val email: String,
@Pattern(regexp = Constants.PASSWORD_REGEX)
val password: String
)
控制器如下所示:
import org.springframework.validation.annotation.Validated
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
@RestController
@Validated
class AuthController(private val authService: AuthService) {
@PostMapping("login")
fun login(@Valid @RequestBody loginDto: LoginDto): LoginResponse {
return authService.login(loginDto)
}
...
}
如果我try 传递无效数据,验证不会出错:
{
"password":"hello",
"email":"dfdfdfdf"
}
我没有发现错误