Files
reqwest-impersonate/examples/async_multiple_requests.rs
danieleades cf8944a0f0 cargo fmt (#604)
Run rustfmt and setup CI to check for it.
2019-08-29 09:52:39 -07:00

41 lines
879 B
Rust

#![deny(warnings)]
use futures::Future;
use reqwest::r#async::{Client, Response};
use serde::Deserialize;
#[derive(Deserialize, Debug)]
struct Slideshow {
title: String,
author: String,
}
#[derive(Deserialize, Debug)]
struct SlideshowContainer {
slideshow: Slideshow,
}
fn fetch() -> impl Future<Item = (), Error = ()> {
let client = Client::new();
let json = |mut res: Response| res.json::<SlideshowContainer>();
let request1 = client.get("https://httpbin.org/json").send().and_then(json);
let request2 = client.get("https://httpbin.org/json").send().and_then(json);
request1
.join(request2)
.map(|(res1, res2)| {
println!("{:?}", res1);
println!("{:?}", res2);
})
.map_err(|err| {
println!("stdout error: {}", err);
})
}
fn main() {
tokio::run(fetch());
}