extern crate static_http_cache;
extern crate reqwest;
use std::env;
use std::error::Error;
use std::fs;
use std::io;
fn get_resource() -> Result<fs::File, Box<dyn Error>>
{
let cache_path = env::temp_dir().join("static_http_cache");
fs::DirBuilder::new()
.recursive(true)
.create(&cache_path)?;
let url = reqwest::Url::parse(
"https://static.rust-lang.org/dist/channel-rust-stable.toml",
)?;
let mut cache = static_http_cache::Cache::new(
cache_path,
reqwest::blocking::Client::new(),
)?;
cache.get(url)
}
fn main() {
let mut file = get_resource().expect("Could not download URL");
let stdout = io::stdout();
io::copy(&mut file, &mut stdout.lock()).expect("could not write to stdout");
}