## org.springframework.web.client
Interface RequestCallback

    public interface RequestCallback

Callback interface for code that operates on a `ClientHttpRequest`. Allows to manipulate the request headers, and write to the request body.

Used internally by the `RestTemplate`, but also useful for application code.

Since:
  3.0
Author:
  Arjen Poutsma
See Also:
  `RestTemplate.execute(java.lang.String, org.springframework.http.HttpMethod, org.springframework.web.client.RequestCallback, org.springframework.web.client.ResponseExtractor<T>, java.lang.Object...)`

Method Summary
`void` `doWithRequest(ClientHttpRequest request)` Gets called by `RestTemplate.execute(java.lang.String, org.springframework.http.HttpMethod, org.springframework.web.client.RequestCallback, org.springframework.web.client.ResponseExtractor<T>, java.lang.Object...)` with an opened `ClientHttpRequest`.

Method Detail

### doWithRequest

    void doWithRequest(ClientHttpRequest request)
                       throws IOException

  Gets called by `RestTemplate.execute(java.lang.String, org.springframework.http.HttpMethod, org.springframework.web.client.RequestCallback, org.springframework.web.client.ResponseExtractor<T>, java.lang.Object...)` with an opened `ClientHttpRequest`. Does not need to care about closing the request or about handling errors: this will all be handled by the `RestTemplate`.

  Parameters:
    `request` - the active HTTP request
  Throws:
    `IOException` - in case of I/O errors