mod api_key;
mod basic;
mod bearer;
use poem::{Request, Result};
pub use self::{api_key::ApiKey, basic::Basic, bearer::Bearer};
use crate::{base::UrlQuery, registry::MetaParamIn};
pub trait BasicAuthorization: Sized {
fn from_request(req: &Request) -> Result<Self>;
}
pub trait BearerAuthorization: Sized {
fn from_request(req: &Request) -> Result<Self>;
}
pub trait ApiKeyAuthorization: Sized {
fn from_request(
req: &Request,
query: &UrlQuery,
name: &str,
in_type: MetaParamIn,
) -> Result<Self>;
}