Spring HATEOAS
ハイパーメディアを利用する RESTful API を開発する場合、Spring Boot はほとんどのアプリケーションで適切に機能する Spring HATEOAS の自動構成を提供します。自動構成により、@EnableHypermediaSupport
(Javadoc) を使用する必要がなくなり、ハイパーメディアベースのアプリケーションの構築を容易にする多数の Bean が登録されます。これには、LinkDiscoverers
(Javadoc) (クライアント側サポート用) や、レスポンスを目的の表現に正しくマーシャリングするように構成された ObjectMapper
(英語) が含まれます。ObjectMapper
(英語) は、さまざまな spring.jackson.*
プロパティを設定するか、存在する場合は Jackson2ObjectMapperBuilder
(Javadoc) Bean によってカスタマイズされます。
@EnableHypermediaSupport
(Javadoc) を使用して Spring HATEOAS の構成を制御できます。これを行うと、前述の ObjectMapper
(英語) のカスタマイズが無効になることに注意してください。
spring-boot-starter-hateoas は Spring MVC に固有であり、Spring WebFlux と組み合わせないでください。Spring HATEOAS を Spring WebFlux と一緒に使用するために、spring-boot-starter-webflux とともに org.springframework.hateoas:spring-hateoas への直接依存関係を追加できます。 |
デフォルトでは、application/json
を受け入れるリクエストは application/hal+json
レスポンスを受け取ります。この動作を無効にするには、spring.hateoas.use-hal-as-default-json-media-type
を false
に設定し、HypermediaMappingInformation
(Javadoc) または HalConfiguration
(Javadoc) を定義して、アプリケーションとそのクライアントのニーズを満たすように Spring HATEOAS を構成します。