Spring HATEOAS

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

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

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-typefalse并定义一个HypermediaMappingInformationHalConfiguration配置 Spring HATEOAS 以满足您的应用程序及其客户端的需求。spring-doc.cadn.net.cn