Examples: allow passing URL via CLI
This commit is contained in:
@@ -4,16 +4,28 @@
|
||||
fn main() -> Result<(), Box<dyn std::error::Error>> {
|
||||
env_logger::init();
|
||||
|
||||
println!("GET https://www.rust-lang.org");
|
||||
// Some simple CLI args requirements...
|
||||
let url = match std::env::args().nth(1) {
|
||||
Some(url) => url,
|
||||
None => {
|
||||
println!("No CLI URL provided, using default.");
|
||||
"https://hyper.rs".into()
|
||||
}
|
||||
};
|
||||
|
||||
let mut res = reqwest::blocking::get("https://www.rust-lang.org/")?;
|
||||
eprintln!("Fetching {:?}...", url);
|
||||
|
||||
println!("Status: {}", res.status());
|
||||
println!("Headers:\n{:?}", res.headers());
|
||||
// reqwest::blocking::get() is a convenience function.
|
||||
//
|
||||
// In most cases, you should create/build a reqwest::Client and reuse
|
||||
// it for all requests.
|
||||
let mut res = reqwest::blocking::get(url)?;
|
||||
|
||||
eprintln!("Response: {:?} {}", res.version(), res.status());
|
||||
eprintln!("Headers: {:#?}\n", res.headers());
|
||||
|
||||
// copy the response body directly to stdout
|
||||
res.copy_to(&mut std::io::stdout())?;
|
||||
|
||||
println!("\n\nDone.");
|
||||
Ok(())
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user