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