Package io.vertx.ext.web.client
Interface OAuth2WebClient
-
- All Superinterfaces:
WebClient
public interface OAuth2WebClient extends WebClient
An asynchronous OAuth2/OIDC aware HTTP / HTTP/2 client calledWebClientOAuth2
.This client wraps a
WebClient
and makes it session aware adding features to it:- Request an
access_token
if no user is created - Refresh
access_token
if current user is expired
-
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Modifier and Type Method Description OAuth2WebClient
addInterceptor(Handler<io.vertx.ext.web.client.impl.HttpContext<?>> interceptor)
Add interceptor in the chain.static OAuth2WebClient
create(WebClient webClient, OAuth2Auth oAuth2Auth)
Create a session aware web client using the providedwebClient
instance.static OAuth2WebClient
create(WebClient webClient, OAuth2Auth oAuth2Auth, OAuth2WebClientOptions options)
Create a session aware web client using the providedwebClient
instance.User
getUser()
Get the authenticated user (if any) that is associated with this client.OAuth2WebClient
withCredentials(Credentials credentials)
Mark that request should be dispatched with authentication obtained from passedOAuth2Auth
provider-
Methods inherited from interface io.vertx.ext.web.client.WebClient
close, delete, delete, delete, delete, delete, delete, deleteAbs, deleteAbs, get, get, get, get, get, get, getAbs, getAbs, head, head, head, head, head, head, headAbs, headAbs, patch, patch, patch, patch, patch, patch, patchAbs, patchAbs, post, post, post, post, post, post, postAbs, postAbs, put, put, put, put, put, put, putAbs, putAbs, request, request, request, request, request, request, request, request, request, request, request, request, request, request, requestAbs, requestAbs, requestAbs, requestAbs, updateSSLOptions, updateSSLOptions
-
-
-
-
Method Detail
-
create
static OAuth2WebClient create(WebClient webClient, OAuth2Auth oAuth2Auth)
Create a session aware web client using the providedwebClient
instance.- Parameters:
webClient
- the web client instanceoAuth2Auth
- Configured oAuth2Auth provider to be used whenwithCredentials(Credentials)
used- Returns:
- the created client
-
create
static OAuth2WebClient create(WebClient webClient, OAuth2Auth oAuth2Auth, OAuth2WebClientOptions options)
Create a session aware web client using the providedwebClient
instance.- Parameters:
webClient
- the web client instanceoAuth2Auth
- Configured oAuth2Auth provider to be used whenwithCredentials(Credentials)
usedoptions
- extra configuration for this object- Returns:
- the created client
-
withCredentials
OAuth2WebClient withCredentials(Credentials credentials)
Mark that request should be dispatched with authentication obtained from passedOAuth2Auth
provider- Returns:
- a reference to this, so the API can be used fluently
-
addInterceptor
OAuth2WebClient addInterceptor(Handler<io.vertx.ext.web.client.impl.HttpContext<?>> interceptor)
Description copied from interface:WebClient
Add interceptor in the chain. The interceptor can maintain per request state withHttpContext.get(String)
/HttpContext.set(String, Object)
. A request/response can be processed several times (in case of retry) and thus they should use the per request state to ensure an operation is not done twice. This API is internal.- Specified by:
addInterceptor
in interfaceWebClient
- Parameters:
interceptor
- the interceptor to add, must not be null- Returns:
- a reference to this, so the API can be used fluently
-
getUser
User getUser()
Get the authenticated user (if any) that is associated with this client.- Returns:
- the current user associated with this client or null if no user is associated
-
-