Skip to content

Commit 598f857

Browse files
Add content length to async_impl::multipart file streams (#2459)
Co-authored-by: I-Al-Istannen <[email protected]>
1 parent d99e90d commit 598f857

File tree

1 file changed

+5
-1
lines changed

1 file changed

+5
-1
lines changed

src/async_impl/multipart.rs

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -267,7 +267,11 @@ impl Part {
267267
let ext = path.extension().and_then(|ext| ext.to_str()).unwrap_or("");
268268
let mime = mime_guess::from_ext(ext).first_or_octet_stream();
269269
let file = File::open(path).await?;
270-
let field = Part::stream(file).mime(mime);
270+
let len = file.metadata().await.map(|m| m.len()).ok();
271+
let field = match len {
272+
Some(len) => Part::stream_with_length(file, len),
273+
None => Part::stream(file)
274+
}.mime(mime);
271275

272276
Ok(if let Some(file_name) = file_name {
273277
field.file_name(file_name)

0 commit comments

Comments
 (0)