Trait AuthorizationProvider

Source
pub trait AuthorizationProvider:
    DynClone
    + Debug
    + Sync
    + Send {
    // Required methods
    fn sign(&self, request: &mut SyncRequest<'_>) -> AuthorizationResult<()>;
    fn async_sign<'a>(
        &'a self,
        request: &'a mut AsyncRequest<'_>,
    ) -> BoxFuture<'a, AuthorizationResult<()>>;
}
Expand description

七牛鉴权签名接口

对 HTTP 请求进行签名

Required Methods§

Source

fn sign(&self, request: &mut SyncRequest<'_>) -> AuthorizationResult<()>

使用指定的鉴权方式对 HTTP 请求进行签名

该方法的异步版本为 Self::async_sign

Source

fn async_sign<'a>( &'a self, request: &'a mut AsyncRequest<'_>, ) -> BoxFuture<'a, AuthorizationResult<()>>

Available on crate feature async only.

使用指定的鉴权方式对异步 HTTP 请求进行签名

Trait Implementations§

Source§

impl<'a> AsRef<dyn AuthorizationProvider + 'a> for Authorization<'a>

Source§

fn as_ref(&self) -> &(dyn AuthorizationProvider + 'a)

Converts this type into a shared reference of the (usually inferred) input type.

Implementations on Foreign Types§

Source§

impl<'b, T: 'b + AuthorizationProvider + ?Sized> AuthorizationProvider for &'b T
where &'b T: DynClone + Debug + Sync + Send,

Source§

fn sign(&self, request: &mut SyncRequest<'_>) -> AuthorizationResult<()>

Source§

fn async_sign<'a>( &'a self, request: &'a mut AsyncRequest<'_>, ) -> BoxFuture<'a, AuthorizationResult<()>>

Available on crate feature async only.
Source§

impl<'b, T: 'b + AuthorizationProvider + ?Sized> AuthorizationProvider for &'b mut T

Source§

fn sign(&self, request: &mut SyncRequest<'_>) -> AuthorizationResult<()>

Source§

fn async_sign<'a>( &'a self, request: &'a mut AsyncRequest<'_>, ) -> BoxFuture<'a, AuthorizationResult<()>>

Available on crate feature async only.
Source§

impl<T: AuthorizationProvider + ?Sized> AuthorizationProvider for Box<T>
where Box<T>: DynClone + Debug + Sync + Send,

Source§

fn sign(&self, request: &mut SyncRequest<'_>) -> AuthorizationResult<()>

Source§

fn async_sign<'a>( &'a self, request: &'a mut AsyncRequest<'_>, ) -> BoxFuture<'a, AuthorizationResult<()>>

Available on crate feature async only.
Source§

impl<T: AuthorizationProvider + ?Sized> AuthorizationProvider for Rc<T>
where Rc<T>: DynClone + Debug + Sync + Send,

Source§

fn sign(&self, request: &mut SyncRequest<'_>) -> AuthorizationResult<()>

Source§

fn async_sign<'a>( &'a self, request: &'a mut AsyncRequest<'_>, ) -> BoxFuture<'a, AuthorizationResult<()>>

Available on crate feature async only.
Source§

impl<T: AuthorizationProvider + ?Sized> AuthorizationProvider for Arc<T>
where Arc<T>: DynClone + Debug + Sync + Send,

Source§

fn sign(&self, request: &mut SyncRequest<'_>) -> AuthorizationResult<()>

Source§

fn async_sign<'a>( &'a self, request: &'a mut AsyncRequest<'_>, ) -> BoxFuture<'a, AuthorizationResult<()>>

Available on crate feature async only.

Implementors§