Trait oauth2::Token

source ·
pub trait Token
where Self: for<'a> Deserialize<'a>,
{ // Required methods fn access_token(&self) -> &AccessToken; fn token_type(&self) -> &TokenType; fn expires_in(&self) -> Option<Duration>; fn refresh_token(&self) -> Option<&RefreshToken>; fn scopes(&self) -> Option<&Vec<Scope>>; }
Expand description

Common methods shared by all OAuth2 token implementations.

The methods in this trait are defined in Section 5.1 of RFC 6749. This trait exists separately from the StandardToken struct to support customization by clients, such as supporting interoperability with non-standards-complaint OAuth2 providers.

Required Methods§

source

fn access_token(&self) -> &AccessToken

REQUIRED. The access token issued by the authorization server.

source

fn token_type(&self) -> &TokenType

REQUIRED. The type of the token issued as described in Section 7.1. Value is case insensitive and deserialized to the generic TokenType parameter.

source

fn expires_in(&self) -> Option<Duration>

RECOMMENDED. The lifetime in seconds of the access token. For example, the value 3600 denotes that the access token will expire in one hour from the time the response was generated. If omitted, the authorization server SHOULD provide the expiration time via other means or document the default value.

source

fn refresh_token(&self) -> Option<&RefreshToken>

OPTIONAL. The refresh token, which can be used to obtain new access tokens using the same authorization grant as described in Section 6.

source

fn scopes(&self) -> Option<&Vec<Scope>>

OPTIONAL, if identical to the scope requested by the client; otherwise, REQUIRED. The scipe of the access token as described by Section 3.3. If included in the response, this space-delimited field is parsed into a Vec of individual scopes. If omitted from the response, this field is None.

Object Safety§

This trait is not object safe.

Implementors§