Testing a Hypermedia REST API using Traverson
In the previous post, we discussed how to create hypermedia driven REST APIs using Spring HATEOAS. In this post, we will have a quick look at how to test the restful API we developed in that previous post using Traverson. Traverson is a Spring Hateoas component inspired by a similar JavaScript library that makes it easier to navigate hypermedia APIs by following links with relation types.
Spring HATEOAS - Adding Pagination Links To RESTful API
When a RESTful API returns a pageable result, it is a good practice to return the required pagination links to enable the clients to easily navigate all the available resources.
In this post, we will look at how to achieve this using PagedResourcesAssembler
.
Spring data provides the org.springframework.data.web.PagedResourcesAssembler
class which is an implementation ofRepresentationModelAssembler, PagedModel>>
interface.
Hypermedia Driven REST API With Spring HATEOAS
A software application is said to be RESTful if the engine of the application state is driven by hypertext (hypermedia). which means that it allows an extensive cross referencing between related data and ensures further operations will depend on the state of the resource.
Web API explained
An API enables two computer systems to communicate with each other by providing the language and contract on how the two systems will interact. A standard API will have specifications and instructions which determines how information can be transferred between two communicating computer systems.
Hypertext Transfer Protocol Status Codes
HTTP Status Code can be described as a standardised status codes issued by the server in response to a client’s request. Below is a list of commonly used HTTP status codes;