Struct openidconnect::CodeTokenRequest [−][src]
pub struct CodeTokenRequest<'a, TE, TR, TT> where
TE: ErrorResponse,
TR: TokenResponse<TT>,
TT: TokenType, { /* fields omitted */ }
A request to exchange an authorization code for an access token.
See https://tools.ietf.org/html/rfc6749#section-4.1.3.
Implementations
impl<'a, TE, TR, TT> CodeTokenRequest<'a, TE, TR, TT> where
TE: ErrorResponse + 'static,
TR: TokenResponse<TT>,
TT: TokenType,
[src]
impl<'a, TE, TR, TT> CodeTokenRequest<'a, TE, TR, TT> where
TE: ErrorResponse + 'static,
TR: TokenResponse<TT>,
TT: TokenType,
[src]pub fn add_extra_param<N, V>(
self,
name: N,
value: V
) -> CodeTokenRequest<'a, TE, TR, TT> where
N: Into<Cow<'a, str>>,
V: Into<Cow<'a, str>>,
[src]
self,
name: N,
value: V
) -> CodeTokenRequest<'a, TE, TR, TT> where
N: Into<Cow<'a, str>>,
V: Into<Cow<'a, str>>,
Appends an extra param to the token request.
This method allows extensions to be used without direct support from
this crate. If name
conflicts with a parameter managed by this crate, the
behavior is undefined. In particular, do not set parameters defined by
RFC 6749 or
RFC 7636.
Security Warning
Callers should follow the security recommendations for any OAuth2 extensions used with this function, which are beyond the scope of RFC 6749.
pub fn set_pkce_verifier(
self,
pkce_verifier: PkceCodeVerifier
) -> CodeTokenRequest<'a, TE, TR, TT>
[src]
self,
pkce_verifier: PkceCodeVerifier
) -> CodeTokenRequest<'a, TE, TR, TT>
Completes the Proof Key for Code Exchange (PKCE) protocol flow.
This method must be called if set_pkce_challenge
was used during the authorization
request.
pub fn request<F, RE>(
self,
http_client: F
) -> Result<TR, RequestTokenError<RE, TE>> where
RE: Error + 'static,
F: FnOnce(HttpRequest) -> Result<HttpResponse, RE>,
[src]
self,
http_client: F
) -> Result<TR, RequestTokenError<RE, TE>> where
RE: Error + 'static,
F: FnOnce(HttpRequest) -> Result<HttpResponse, RE>,
Synchronously sends the request to the authorization server and awaits a response.
pub async fn request_async<C, F, RE>(
self,
http_client: C
) -> Result<TR, RequestTokenError<RE, TE>> where
C: FnOnce(HttpRequest) -> F,
RE: Error + 'static,
F: Future<Output = Result<HttpResponse, RE>>,
[src]
self,
http_client: C
) -> Result<TR, RequestTokenError<RE, TE>> where
C: FnOnce(HttpRequest) -> F,
RE: Error + 'static,
F: Future<Output = Result<HttpResponse, RE>>,
Asynchronously sends the request to the authorization server and returns a Future.
Trait Implementations
impl<'a, TE, TR, TT> Debug for CodeTokenRequest<'a, TE, TR, TT> where
TE: Debug + ErrorResponse,
TR: Debug + TokenResponse<TT>,
TT: Debug + TokenType,
[src]
impl<'a, TE, TR, TT> Debug for CodeTokenRequest<'a, TE, TR, TT> where
TE: Debug + ErrorResponse,
TR: Debug + TokenResponse<TT>,
TT: Debug + TokenType,
[src]Auto Trait Implementations
impl<'a, TE, TR, TT> RefUnwindSafe for CodeTokenRequest<'a, TE, TR, TT> where
TE: RefUnwindSafe,
TR: RefUnwindSafe,
TT: RefUnwindSafe,
impl<'a, TE, TR, TT> RefUnwindSafe for CodeTokenRequest<'a, TE, TR, TT> where
TE: RefUnwindSafe,
TR: RefUnwindSafe,
TT: RefUnwindSafe,
impl<'a, TE, TR, TT> Send for CodeTokenRequest<'a, TE, TR, TT> where
TE: Send,
TR: Send,
TT: Send,
impl<'a, TE, TR, TT> Send for CodeTokenRequest<'a, TE, TR, TT> where
TE: Send,
TR: Send,
TT: Send,
impl<'a, TE, TR, TT> Sync for CodeTokenRequest<'a, TE, TR, TT> where
TE: Sync,
TR: Sync,
TT: Sync,
impl<'a, TE, TR, TT> Sync for CodeTokenRequest<'a, TE, TR, TT> where
TE: Sync,
TR: Sync,
TT: Sync,
impl<'a, TE, TR, TT> Unpin for CodeTokenRequest<'a, TE, TR, TT> where
TE: Unpin,
TR: Unpin,
TT: Unpin,
impl<'a, TE, TR, TT> Unpin for CodeTokenRequest<'a, TE, TR, TT> where
TE: Unpin,
TR: Unpin,
TT: Unpin,
impl<'a, TE, TR, TT> UnwindSafe for CodeTokenRequest<'a, TE, TR, TT> where
TE: UnwindSafe,
TR: UnwindSafe,
TT: UnwindSafe,
impl<'a, TE, TR, TT> UnwindSafe for CodeTokenRequest<'a, TE, TR, TT> where
TE: UnwindSafe,
TR: UnwindSafe,
TT: UnwindSafe,
Blanket Implementations
impl<T> Instrument for T
[src]
impl<T> Instrument for T
[src]pub fn instrument(self, span: Span) -> Instrumented<Self>
[src]
pub fn in_current_span(self) -> Instrumented<Self>
[src]
impl<T> Instrument for T
[src]
impl<T> Instrument for T
[src]pub fn instrument(self, span: Span) -> Instrumented<Self>
[src]
pub fn in_current_span(self) -> Instrumented<Self>
[src]
impl<T> Same<T> for T
impl<T> Same<T> for T
type Output = T
Should always be Self
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
impl<V, T> VZip<V> for T where
V: MultiLane<T>,