pub struct StaticFile(/* private fields */);Expand description
StaticFile is a handler that serves a single static file.
§Examples
use salvo_core::prelude::*;
use salvo_serve_static::StaticFile;
#[handler]
async fn hello() -> &'static str {
"Hello World"
}
let router = Router::new()
.get(hello)
.push(Router::with_path("favicon.ico").get(StaticFile::new("assets/favicon.ico")));Implementations§
Source§impl StaticFile
impl StaticFile
Sourcepub fn new(path: impl Into<PathBuf>) -> StaticFile
pub fn new(path: impl Into<PathBuf>) -> StaticFile
Create a new StaticFile handler.
Sourcepub fn chunk_size(self, size: u64) -> StaticFile
pub fn chunk_size(self, size: u64) -> StaticFile
Set the chunk size for file reading.
During file reading, the maximum read size at one time will affect the access experience and memory usage of the server.
Please set it according to your specific requirements.
The default is 1MB.
Trait Implementations§
Source§impl Clone for StaticFile
impl Clone for StaticFile
Source§fn clone(&self) -> StaticFile
fn clone(&self) -> StaticFile
Returns a copy of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Handler for StaticFile
impl Handler for StaticFile
Source§fn handle<'life0, 'life1, 'life2, 'life3, 'life4, 'async_trait>(
&'life0 self,
req: &'life1 mut Request,
depot: &'life2 mut Depot,
res: &'life3 mut Response,
ctrl: &'life4 mut FlowCtrl,
) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
'life4: 'async_trait,
StaticFile: 'async_trait,
fn handle<'life0, 'life1, 'life2, 'life3, 'life4, 'async_trait>(
&'life0 self,
req: &'life1 mut Request,
depot: &'life2 mut Depot,
res: &'life3 mut Response,
ctrl: &'life4 mut FlowCtrl,
) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
'life4: 'async_trait,
StaticFile: 'async_trait,
Handle http request.
Source§fn arc(self) -> ArcHandlerwhere
Self: Sized,
fn arc(self) -> ArcHandlerwhere
Self: Sized,
Wrap to
ArcHandler.Source§fn hoop<H>(self, hoop: H) -> HoopedHandler
fn hoop<H>(self, hoop: H) -> HoopedHandler
Hoop this handler with middleware.
Auto Trait Implementations§
impl Freeze for StaticFile
impl RefUnwindSafe for StaticFile
impl Send for StaticFile
impl Sync for StaticFile
impl Unpin for StaticFile
impl UnwindSafe for StaticFile
Blanket Implementations§
Source§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
Source§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more