#static #static-file #axum #embed #serve-static #etag #local-file

axum-embed-files

为 axum 提供零开销的开发友好型静态文件处理

1 个不稳定版本

0.1.0-beta.02024年1月11日

#1079 in 文件系统

每月 29 次下载

MIT 许可证

10KB
104 代码行

服务静态嵌入文件。

此包提供用于在编译时嵌入 Rust 可执行文件的静态文件的实用工具。这对于直接在 Web 服务器中包含小型资产文件非常有用。文件通过 Content-TypeETagLast-Modified 头部提供服务,并且正确处理了条件请求(到目前为止只是 If-None-Match)。

对于开发,您可能希望直接从本地文件系统提供服务。使用功能 serve-from-fs 编译并开始编码!

示例

use axum::Router;
use axum_embed_files::embed_files;

fn router<S: Clone + Sync + Send + 'static>() -> Router<S> {
    embed_files!("assets", [
        "img/logo.svg",
        "style.css",
    ])
}

依赖项

~4.5MB
~69K SLoC