Skip to main content

HeaderProvider

Trait HeaderProvider 

pub trait HeaderProvider: Send + Sync {
    // Required method
    fn headers<'life0, 'async_trait>(
        &'life0 self,
    ) -> Pin<Box<dyn Future<Output = Result<HashMap<String, String>, HeaderProviderError>> + Send + 'async_trait>>
       where 'life0: 'async_trait,
             Self: 'async_trait;

    // Provided method
    fn headers_refresh<'life0, 'async_trait>(
        &'life0 self,
    ) -> Pin<Box<dyn Future<Output = Result<HashMap<String, String>, HeaderProviderError>> + Send + 'async_trait>>
       where 'life0: 'async_trait,
             Self: 'async_trait { ... }
}

Required Methods§

fn headers<'life0, 'async_trait>( &'life0 self, ) -> Pin<Box<dyn Future<Output = Result<HashMap<String, String>, HeaderProviderError>> + Send + 'async_trait>>
where 'life0: 'async_trait, Self: 'async_trait,

Provided Methods§

fn headers_refresh<'life0, 'async_trait>( &'life0 self, ) -> Pin<Box<dyn Future<Output = Result<HashMap<String, String>, HeaderProviderError>> + Send + 'async_trait>>
where 'life0: 'async_trait, Self: 'async_trait,

Like headers, but forces any cached authentication to refresh before returning. Request layers call this after the server rejects a request with an auth error (HTTP 401 / gRPC Unauthenticated) so a stale-but-unexpired cached token is re-minted instead of failing until its TTL. The default delegates to headers; auth providers override it to bypass their session cache and re-authenticate.

Implementors§

§

impl HeaderProvider for CombinedHeaderProvider

§

impl HeaderProvider for SoAuthHeaderProvider

§

impl HeaderProvider for SspAuthHeaderProvider