cod*_*ent 10 spring spring-mvc hibernate-validator spring-webflux
根据当前的doc(5.0.0.RELEASE),Spring Webflux在使用带注释的控制器时支持验证:
默认情况下,如果类路径上存在Bean Validation - 例如Hibernate Validator,则LocalValidatorFactoryBean将注册为全局Validator,以便与@Valid和@Controller方法参数上的Validated一起使用.
但是没有说明如何使用功能端点自动化它.实际上,文档中唯一的输入处理示例并不验证任何内容:
public Mono<ServerResponse> createPerson(ServerRequest request) {
Mono<Person> person = request.bodyToMono(Person.class);
return ServerResponse.ok().build(repository.savePerson(person));
}
Run Code Online (Sandbox Code Playgroud)
我们应该手动执行此操作还是有一些自动方法可以执行此操作?
Arj*_*sma 15
在Spring 5.0版中,没有自动方法在功能端点中进行验证,因此必须手动完成验证.
虽然目前还没有具体的计划,但我们可能会在未来添加某种验证.但即使这样,它也将是一个显式的方法调用,而不是一个自动机制.总的来说,功能端点模型的设计比基于注释的模型要明确得多.
正如arjen-poutsma所说,似乎无法在 Spring 5 功能端点上运行自动验证。
\nSpring 文档对此不是很清楚,并且没有建议任何方法。
\n在这篇 Baeldung 文章中,您将找到有关如何使用此方法运行验证的想法(免责声明:我是本文的作者:))
\n简而言之,您可以按照以下步骤操作:
\n编辑:
\n我一直在关注这个相关的 Spring 问题,看来我们现在依赖于有关此主题的官方文档:https ://docs.spring.io/spring-framework/reference/web/webflux-featured.html#webflux- fn 处理程序验证
\n建议的方法是使用本文中解释的验证器:
\n\n\n验证
\n功能端点可以使用 Spring\xe2\x80\x99s 验证工具将验证应用于请求正文。
\n
| 归档时间: |
|
| 查看次数: |
1761 次 |
| 最近记录: |