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,使其滿足您的應用程式及其客戶端的需求。