#[non_exhaustive]pub struct Password {
pub token_url: String,
pub refresh_url: Option<String>,
pub scopes: Scopes,
}
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Non-exhaustive structs could have additional fields added in future. Therefore, non-exhaustive structs cannot be constructed in external crates using the traditional
Struct { .. }
syntax; cannot be matched against without a wildcard ..
; and struct update syntax will not work.token_url: String
Token url for this OAuth2 flow. OAuth2 standard requires TLS.
refresh_url: Option<String>
Optional refresh token url.
scopes: Scopes
Scopes required by the flow.
Implementations§
source§impl Password
impl Password
sourcepub fn new<S: Into<String>>(token_url: S, scopes: Scopes) -> Self
pub fn new<S: Into<String>>(token_url: S, scopes: Scopes) -> Self
Construct a new password oauth flow.
Accepts two arguments: one which is a token url and two a map of scopes for oauth flow.
§Examples
Create new password flow with scopes.
Password::new(
"https://localhost/token",
Scopes::from_iter([
("edit:items", "edit my items"),
("read:items", "read my items")
]),
);
Create new password flow without any scopes.
Password::new(
"https://localhost/token",
Scopes::new(),
);
sourcepub fn with_refresh_url<S: Into<String>>(
token_url: S,
scopes: Scopes,
refresh_url: S,
) -> Self
pub fn with_refresh_url<S: Into<String>>( token_url: S, scopes: Scopes, refresh_url: S, ) -> Self
Construct a new password oauth flow with additional refresh url.
This is essentially same as Password::new
but allows defining third parameter for refresh_url
for fetching refresh tokens.
§Examples
Create new password flow with refresh url.
Password::with_refresh_url(
"https://localhost/token",
Scopes::from_iter([
("edit:items", "edit my items"),
("read:items", "read my items")
]),
"https://localhost/refres-token"
);
Trait Implementations§
source§impl<'de> Deserialize<'de> for Password
impl<'de> Deserialize<'de> for Password
source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
source§impl PartialEq for Password
impl PartialEq for Password
impl Eq for Password
impl StructuralPartialEq for Password
Auto Trait Implementations§
impl Freeze for Password
impl RefUnwindSafe for Password
impl Send for Password
impl Sync for Password
impl Unpin for Password
impl UnwindSafe for Password
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§default unsafe fn clone_to_uninit(&self, dst: *mut T)
default unsafe fn clone_to_uninit(&self, dst: *mut T)
🔬This is a nightly-only experimental API. (
clone_to_uninit
)source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key
and return true
if they are equal.