Spring HATEOAS

如果您开发使用超媒体的 RESTful API,Spring Boot 将为 Spring HATEOAS 提供自动配置,该配置适用于大多数应用程序。 自动配置取代了使用 @EnableHypermediaSupport 的需要,并注册了大量 bean 以简化基于超媒体的应用程序的构建,包括 LinkDiscoverers(用于客户端支持)和 ObjectMapper,该配置用于将响应正确地编组到所需的表示形式中。 ObjectMapper 是通过设置各种属性来自定义的,如果存在,则通过 Jackson2ObjectMapperBuilder bean 进行自定义。spring.jackson.*spring-doc.cn

您可以使用 @EnableHypermediaSupport 来控制 Spring HATEOAS 的配置。 请注意,这样做会禁用前面描述的 ObjectMapper 自定义。spring-doc.cn

spring-boot-starter-hateoas特定于 Spring MVC,不应与 Spring WebFlux 结合使用。 为了将 Spring HATEOAS 与 Spring WebFlux 一起使用,您可以添加对 的直接依赖项以及 .org.springframework.hateoas:spring-hateoasspring-boot-starter-webflux

默认情况下,接受的请求将收到响应。 要禁用此行为,请设置并定义HypermediaMappingInformationHalConfiguration,以配置 Spring HATEOAS 以满足应用程序及其客户端的需求。application/jsonapplication/hal+jsonspring.hateoas.use-hal-as-default-json-media-typefalsespring-doc.cn