slinger 0.2.14

An HTTP Client for Rust designed for hackers.
Documentation
use futures::stream::FuturesUnordered;
use futures::StreamExt;

#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
  use slinger::ClientBuilder;
  let client = ClientBuilder::default().build().unwrap();
  let mut worker = FuturesUnordered::new();
  let start = std::time::Instant::now();
  let mut t = vec![1, 2, 3, 4, 5, 6, 7, 8, 9].into_iter();
  for _ in 0..5 {
    if let Some(n) = t.next() {
      worker.push(client.get(format!("http://httpbin.org/delay/{}", n)).send());
    }
  }
  while let Some(resp) = worker.next().await {
    println!("{}", resp?.text()?);
    if let Some(n) = t.next() {
      worker.push(client.get(format!("http://httpbin.org/delay/{}", n)).send());
    }
  }
  println!("{:?}", std::time::Instant::now() - start);
  Ok(())
}