Struct oauth2::IntrospectionRequest [−][src]
pub struct IntrospectionRequest<'a, TE, TIR, TT> where
TE: ErrorResponse,
TIR: TokenIntrospectionResponse<TT>,
TT: TokenType, { /* fields omitted */ }
Expand description
A request to introspect an access token.
See https://tools.ietf.org/html/rfc7662#section-2.1
Implementations
impl<'a, TE, TIR, TT> IntrospectionRequest<'a, TE, TIR, TT> where
TE: ErrorResponse + 'static,
TIR: TokenIntrospectionResponse<TT>,
TT: TokenType,
impl<'a, TE, TIR, TT> IntrospectionRequest<'a, TE, TIR, TT> where
TE: ErrorResponse + 'static,
TIR: TokenIntrospectionResponse<TT>,
TT: TokenType,
Sets the optional token_type_hint parameter.
See: https://tools.ietf.org/html/rfc7662#section-2.1
OPTIONAL. A hint about the type of the token submitted for introspection. The protected resource MAY pass this parameter to help the authorization server optimize the token lookup. If the server is unable to locate the token using the given hint, it MUST extend its search across all of its supported token types. An authorization server MAY ignore this parameter, particularly if it is able to detect the token type automatically. Values for this field are defined in the “OAuth Token Type Hints” registry defined in OAuth Token Revocation RFC7009.
Appends an extra param to the token introspection 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 7662.
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 request<F, RE>(
self,
http_client: F
) -> Result<TIR, RequestTokenError<RE, TE>> where
F: FnOnce(HttpRequest) -> Result<HttpResponse, RE>,
RE: Error + 'static,
pub fn request<F, RE>(
self,
http_client: F
) -> Result<TIR, RequestTokenError<RE, TE>> where
F: FnOnce(HttpRequest) -> Result<HttpResponse, RE>,
RE: Error + 'static,
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<TIR, RequestTokenError<RE, TE>> where
C: FnOnce(HttpRequest) -> F,
F: Future<Output = Result<HttpResponse, RE>>,
RE: Error + 'static,
pub async fn request_async<C, F, RE>(
self,
http_client: C
) -> Result<TIR, RequestTokenError<RE, TE>> where
C: FnOnce(HttpRequest) -> F,
F: Future<Output = Result<HttpResponse, RE>>,
RE: Error + 'static,
Asynchronously sends the request to the authorization server and returns a Future.
Trait Implementations
impl<'a, TE: Debug, TIR: Debug, TT: Debug> Debug for IntrospectionRequest<'a, TE, TIR, TT> where
TE: ErrorResponse,
TIR: TokenIntrospectionResponse<TT>,
TT: TokenType,
impl<'a, TE: Debug, TIR: Debug, TT: Debug> Debug for IntrospectionRequest<'a, TE, TIR, TT> where
TE: ErrorResponse,
TIR: TokenIntrospectionResponse<TT>,
TT: TokenType,
Auto Trait Implementations
impl<'a, TE, TIR, TT> RefUnwindSafe for IntrospectionRequest<'a, TE, TIR, TT> where
TE: RefUnwindSafe,
TIR: RefUnwindSafe,
TT: RefUnwindSafe,
impl<'a, TE, TIR, TT> Send for IntrospectionRequest<'a, TE, TIR, TT> where
TE: Send,
TIR: Send,
TT: Send,
impl<'a, TE, TIR, TT> Sync for IntrospectionRequest<'a, TE, TIR, TT> where
TE: Sync,
TIR: Sync,
TT: Sync,
impl<'a, TE, TIR, TT> Unpin for IntrospectionRequest<'a, TE, TIR, TT> where
TE: Unpin,
TIR: Unpin,
TT: Unpin,
impl<'a, TE, TIR, TT> UnwindSafe for IntrospectionRequest<'a, TE, TIR, TT> where
TE: UnwindSafe,
TIR: UnwindSafe,
TT: UnwindSafe,