A better Rust ATProto crate
at main 856 B view raw
1//! Example: Download large file using streaming 2use jacquard_common::http_client::HttpClientExt; 3 4#[tokio::main] 5async fn main() -> Result<(), Box<dyn std::error::Error>> { 6 let client = reqwest::Client::new(); 7 8 let request = http::Request::builder() 9 .uri("https://httpbin.org/bytes/1024") 10 .body(vec![]) 11 .unwrap(); 12 13 let response = client.send_http_streaming(request).await?; 14 println!("Status: {}", response.status()); 15 println!("Headers: {:?}", response.headers()); 16 17 let (_parts, _body) = response.into_parts(); 18 println!("Received streaming response body (ByteStream)"); 19 20 // Note: To iterate over chunks, use futures_lite::StreamExt on the pinned inner stream: 21 // let mut stream = Box::pin(body.into_inner()); 22 // while let Some(chunk) = stream.as_mut().try_next().await? { ... } 23 24 Ok(()) 25}