anchor.diff:  
   
   [[webflux-client-retrieve]]
  -== Using the `retrieve` Method
  +== Using `retrieve()`
   
   The `retrieve()` method is the easiest way to get a response body and decode it.
   The following example shows how to do so:
  
positive.code: 
  
  [[webflux-client-exchange]]
  == Using the `exchange` Method
  
  The `exchange()` method provides more control than the `retrieve` method. The following example is equivalent
  to `retrieve()` but also provides access to the `ClientResponse`:
  
negative.code: ====
  
  
  [[webflux-client-builder-reactor-timeout]]
  ==== Timeouts
  
  To configure a connection timeout:
  
  ====
  [source,java,intent=0]
  [subs="verbatim,quotes"]
  ----
  import io.netty.channel.ChannelOption;
  
  HttpClient httpClient = HttpClient.create()
  		.tcpConfiguration(client ->
  				client.option(ChannelOption.CONNECT_TIMEOUT_MILLIS, 10000));
  ----
  ====
  
  To configure a read and/or write timeout values:
  
  ====
  [source,java,intent=0]
  [subs="verbatim,quotes"]
  ----
  import io.netty.handler.timeout.ReadTimeoutHandler;
  import io.netty.handler.timeout.WriteTimeoutHandler;
  
  HttpClient httpClient = HttpClient.create()
  		.tcpConfiguration(client ->
  				client.doOnConnected(conn -> conn
  						.addHandlerLast(new ReadTimeoutHandler(10))
  						.addHandlerLast(new WriteTimeoutHandler(10))));
  ----
  ====
  
  
  
  [[webflux-client-builder-jetty]]
  === Jetty
  