Class BasicAuthenticationInterceptor
- java.lang.Object
- org.springframework.http.client.support.BasicAuthenticationInterceptor
- All Implemented Interfaces:
ClientHttpRequestInterceptor
public class BasicAuthenticationInterceptor extends Object implements ClientHttpRequestInterceptor
ClientHttpRequestInterceptor
to apply a given HTTP Basic Authentication username/password pair, unless a customAuthorization
header has already been set.- Since:
- 5.1.1
- Author:
- Juergen Hoeller, Sam Brannen
- See Also:
HttpHeaders.setBasicAuth(java.lang.String, java.lang.String)
,HttpHeaders.AUTHORIZATION
Constructor Summary
Constructors Constructor Description BasicAuthenticationInterceptor(String username, String password)
Create a new interceptor which adds Basic Authentication for the given username and password.BasicAuthenticationInterceptor(String username, String password, Charset charset)
Create a new interceptor which adds Basic Authentication for the given username and password, encoded using the specified charset.
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description ClientHttpResponse
intercept(HttpRequest request, byte[] body, ClientHttpRequestExecution execution)
Intercept the given request, and return a response.
Constructor Detail
BasicAuthenticationInterceptor
public BasicAuthenticationInterceptor(String username, String password)
Create a new interceptor which adds Basic Authentication for the given username and password.- Parameters:
username
- the username to usepassword
- the password to use- See Also:
HttpHeaders.setBasicAuth(String, String)
,HttpHeaders.encodeBasicAuth(String, String, Charset)
BasicAuthenticationInterceptor
public BasicAuthenticationInterceptor(String username, String password, @Nullable Charset charset)
Create a new interceptor which adds Basic Authentication for the given username and password, encoded using the specified charset.- Parameters:
username
- the username to usepassword
- the password to usecharset
- the charset to use- See Also:
HttpHeaders.setBasicAuth(String, String, Charset)
,HttpHeaders.encodeBasicAuth(String, String, Charset)
Method Detail
intercept
public ClientHttpResponse intercept(HttpRequest request, byte[] body, ClientHttpRequestExecution execution) throws IOException
Description copied from interface:ClientHttpRequestInterceptor
Intercept the given request, and return a response. The givenClientHttpRequestExecution
allows the interceptor to pass on the request and response to the next entity in the chain.A typical implementation of this method would follow the following pattern:
- Examine the request and body
- Optionally wrap the request to filter HTTP attributes.
- Optionally modify the body of the request.
- Either
- execute the request using
ClientHttpRequestExecution.execute(org.springframework.http.HttpRequest, byte[])
, or - do not execute the request to block the execution altogether.
- execute the request using
- Optionally wrap the response to filter HTTP attributes.
- Specified by:
intercept
in interfaceClientHttpRequestInterceptor
- Parameters:
request
- the request, containing method, URI, and headersbody
- the body of the requestexecution
- the request execution- Returns:
- the response
- Throws:
IOException
- in case of I/O errors