public final class OAuth2ClientArgumentResolver
extends java.lang.Object
implements org.springframework.web.reactive.result.method.HandlerMethodArgumentResolver
HandlerMethodArgumentResolver
that is capable
of resolving a method parameter into an argument value for the following types:
ClientRegistration
, OAuth2AuthorizedClient
and OAuth2AccessToken
.
For example:
@Controller public class MyController { @GetMapping("/client-registration") public MonoclientRegistration(@OAuth2Client("login-client") ClientRegistration clientRegistration) { // do something with clientRegistration } @GetMapping("/authorized-client") public Mono authorizedClient(@OAuth2Client("login-client") OAuth2AuthorizedClient authorizedClient) { // do something with authorizedClient } @GetMapping("/access-token") public Mono accessToken(@OAuth2Client("login-client") OAuth2AccessToken accessToken) { // do something with accessToken } }
OAuth2Client
Constructor and Description |
---|
OAuth2ClientArgumentResolver(ReactiveClientRegistrationRepository clientRegistrationRepository,
ReactiveOAuth2AuthorizedClientService authorizedClientService)
Constructs an
OAuth2ClientArgumentResolver using the provided parameters. |
Modifier and Type | Method and Description |
---|---|
reactor.core.publisher.Mono<java.lang.Object> |
resolveArgument(org.springframework.core.MethodParameter parameter,
org.springframework.web.reactive.BindingContext bindingContext,
org.springframework.web.server.ServerWebExchange exchange) |
boolean |
supportsParameter(org.springframework.core.MethodParameter parameter) |
public OAuth2ClientArgumentResolver(ReactiveClientRegistrationRepository clientRegistrationRepository, ReactiveOAuth2AuthorizedClientService authorizedClientService)
OAuth2ClientArgumentResolver
using the provided parameters.clientRegistrationRepository
- the repository of client registrationsauthorizedClientService
- the authorized client servicepublic boolean supportsParameter(org.springframework.core.MethodParameter parameter)
supportsParameter
in interface org.springframework.web.reactive.result.method.HandlerMethodArgumentResolver
public reactor.core.publisher.Mono<java.lang.Object> resolveArgument(org.springframework.core.MethodParameter parameter, org.springframework.web.reactive.BindingContext bindingContext, org.springframework.web.server.ServerWebExchange exchange)
resolveArgument
in interface org.springframework.web.reactive.result.method.HandlerMethodArgumentResolver