Spring HATEOAS
如果您开发一个使用超媒体的 RESTful API,Spring Boot 为 Spring HATEOAS 提供了自动配置,它与大多数应用程序配合良好。自动配置取代了使用 @EnableHypermediaSupport 的需要,并注册了许多 bean,以简化基于超媒体的应用程序的构建,包括 LinkDiscoverers(用于客户端支持)和配置为正确将响应编组为所需表示形式的 JsonMapper。JsonMapper 通过设置各种 spring.jackson.* 属性或(如果存在)JsonMapperBuilderCustomizer bean 进行自定义。
您可以通过使用 @EnableHypermediaSupport 来控制 Spring HATEOAS 的配置。请注意,这样做会禁用前面描述的 JsonMapper 自定义。
spring-boot-starter-hateoas 特定于 Spring MVC,不应与 Spring WebFlux 结合使用。要将 Spring HATEOAS 与 Spring WebFlux 结合使用,您可以直接依赖 org.springframework.hateoas:spring-hateoas 以及 spring-boot-starter-webflux。 |
默认情况下,接受 application/json 的请求将接收 application/hal+json 响应。要禁用此行为,请将 spring.hateoas.use-hal-as-default-json-media-type 设置为 false 并定义 HypermediaMappingInformation 或 HalConfiguration 以配置 Spring HATEOAS,使其满足您的应用程序及其客户端的需求。