跳到主要内容
版本:3.5.10

Spring HATEOAS

QWen Max 中英对照 Spring HATEOAS

如果你开发了一个使用超媒体(hypermedia)的 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 WebFlux 中使用 Spring HATEOAS,可直接添加 org.springframework.hateoas:spring-hateoas 依赖,并配合 spring-boot-starter-webflux 使用。

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