axum-range
HTTP range responses for axum
.
MIT license.
Example usage
use TypedHeader;
use Range;
use File;
use Ranged;
use KnownSize;
async
HTTP range responses for axum
.
MIT license.
use axum::TypedHeader;
use axum::headers::Range;
use tokio::fs::File;
use axum_range::Ranged;
use axum_range::KnownSize;
async fn file(range: Option<TypedHeader<Range>>) -> Ranged<KnownSize<File>> {
let file = File::open("archlinux-x86_64.iso").await.unwrap();
let body = KnownSize::file(file).await.unwrap();
let range = range.map(|TypedHeader(range)| range);
Ranged::new(range, body)
}