8.7. Spring HATEOAS
如果您开发使用超媒体的 RESTful API,Spring Boot 会为 Spring HATEOAS 提供自动配置,该配置适用于大多数应用程序。自动配置取代了使用 @EnableHypermediaSupport
的需要,并注册了许多 bean 来简化构建基于超媒体的应用程序,包括 LinkDiscoverers(用于客户端支持)和配置为正确将响应编组到所需表示的 ObjectMapper
。 ObjectMapper
是通过设置各种 spring.jackson.*
属性来定制的,或者如果存在的话,可以通过Jackson2ObjectMapperBuilder
bean 来定制。
您可以使用 @EnableHypermediaSupport
来控制 Spring HATEOAS 的配置。请注意,这样做会禁用前面描述的 ObjectMapper 自定义。
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 以满足应用程序及其客户端的需求。
最后更新于