[−][src]Struct hyper_staticfile::Static
High-level interface for serving static files.
This struct serves files from a single root path, which may be absolute or relative. The
request is mapped onto the filesystem by appending their URL path to the root path. If the
filesystem path corresponds to a regular file, the service will attempt to serve it. Otherwise,
if the path corresponds to a directory containing an index.html
, the service will attempt to
serve that instead.
This struct allows direct access to its fields, but these fields are typically initialized by the accessors, using the builder pattern. The fields are basically a bunch of settings that determine the response details.
This struct also implements the hyper::Service
trait, which simply wraps Static::serve
.
Note that using the trait currently involves an extra Box
.
Fields
root: PathBuf
The root directory path to serve files from.
cache_headers: Option<u32>
Whether to send cache headers, and what lifespan to indicate.
Implementations
impl Static
[src]
pub fn new(root: impl Into<PathBuf>) -> Self
[src]
Create a new instance of Static
with a given root path.
If Path::new("")
is given, files will be served from the current directory.
pub fn cache_headers(&mut self, value: Option<u32>) -> &mut Self
[src]
Add cache headers to responses for the given lifespan.
pub async fn serve<B>(
self,
request: Request<B>
) -> Result<Response<Body>, IoError>
[src]
self,
request: Request<B>
) -> Result<Response<Body>, IoError>
Serve a request.
Trait Implementations
impl Clone for Static
[src]
impl<B: Send + Sync + 'static> Service<Request<B>> for Static
[src]
type Response = Response<Body>
Responses given by the service.
type Error = IoError
Errors produced by the service.
type Future = Pin<Box<dyn Future<Output = Result<Self::Response, Self::Error>> + Send>>
The future response value.
pub fn poll_ready(
&mut self,
_cx: &mut Context<'_>
) -> Poll<Result<(), Self::Error>>
[src]
&mut self,
_cx: &mut Context<'_>
) -> Poll<Result<(), Self::Error>>
pub fn call(&mut self, request: Request<B>) -> Self::Future
[src]
Auto Trait Implementations
impl RefUnwindSafe for Static
[src]
impl Send for Static
[src]
impl Sync for Static
[src]
impl Unpin for Static
[src]
impl UnwindSafe for Static
[src]
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
pub fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T> Instrument for T
[src]
pub fn instrument(self, span: Span) -> Instrumented<Self>
[src]
pub fn in_current_span(self) -> Instrumented<Self>
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
pub fn to_owned(&self) -> T
[src]
pub fn clone_into(&self, target: &mut T)
[src]
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,