1
0
mirror of https://github.com/fafhrd91/actix-web synced 2024-11-24 00:21:08 +01:00
actix-web/examples/client.rs

27 lines
822 B
Rust
Raw Normal View History

2019-03-26 20:31:51 +01:00
use actix_http::Error;
2019-01-29 05:41:09 +01:00
use actix_rt::System;
2019-04-11 05:57:18 +02:00
use futures::{future::lazy, Future};
2019-01-29 05:41:09 +01:00
fn main() -> Result<(), Error> {
std::env::set_var("RUST_LOG", "actix_http=trace");
env_logger::init();
System::new("test").block_on(lazy(|| {
2019-03-26 20:31:51 +01:00
awc::Client::new()
.get("https://www.rust-lang.org/") // <- Create request builder
2019-01-29 05:41:09 +01:00
.header("User-Agent", "Actix-web")
2019-03-26 20:31:51 +01:00
.send() // <- Send http request
2019-01-29 05:41:09 +01:00
.from_err()
2019-04-11 05:57:18 +02:00
.and_then(|mut response| {
2019-01-29 05:41:09 +01:00
// <- server http response
println!("Response: {:?}", response);
// read response body
response
2019-04-11 05:57:18 +02:00
.body()
2019-01-29 05:41:09 +01:00
.from_err()
.map(|body| println!("Downloaded: {:?} bytes", body.len()))
})
}))
}