pub use crate::client::Method;
pub use crate::{HeaderMap, Result, Url};
#[non_exhaustive]
pub struct Request {
pub method: Method,
pub url: Url,
pub headers: HeaderMap,
}
impl Request {
pub fn new(method: Method, url: Url, headers: HeaderMap) -> Self {
Request {
method,
url,
headers,
}
}
}
pub trait InterceptRequest {
fn intercept(&self, request: Request) -> Result<Request>;
}
#[derive(Clone, Copy, Debug, Default)]
pub struct NoopRequestInterceptor;
impl InterceptRequest for NoopRequestInterceptor {
fn intercept(&self, request: Request) -> Result<Request> {
Ok(request)
}
}