This module provides an HTTP request function that can be reused and composed in other applications.
The Function
uses the reactive WebClient
from Spring WebFlux
and is implemented as a java.util.function.Function
.
This function gives you a reactive stream of ResponseEntity
given a stream of request messages as the function a signature of Function<Message<?>,ResponseEntity>
.
Users have to subscribe to the returned Flux
to receive the data.
The HttpRequestFunction
auto-configuration provides the following bean:
httpRequestFunction
You may inject this as HttpRequestFunction
.
You can use httpRequestFunction
as a qualifier when injecting.
Once injected, you can use the apply
method of the Function
to invoke it and then subscribe to the returned Flux
.
All configuration properties are prefixed with http.request
.
For more information on the various options available, please see HttpRequestFunctionProperties.java
See this test suite for examples of how this function is used.
See this README where this function is used to create a Spring Cloud Stream application to process HTTP requests.