Оставлю ответ для будущих поколений.
Есть вполне хороший пакет - reqwest.
https://github.com/seanmonstar/reqwest
Код будет такой:
(сначала надо добавить зависимость)
[dependencies]
reqwest = { version = "0.11", features = ["blocking", "json"] } #blocking - только для примера, чтобы не нагружать await-ами. json - чтобы добавить возможность десериализации ответа при помощи serde-json
use std::collections::HashMap;
fn main() -> Result<(), Box<dyn std::error::Error>> {
let resp = reqwest::blocking::get("https://httpbin.org/ip")?
.json::<HashMap<String, String>>()?; // Тут нужно подставлять тот тип, который реализует трейт Deserialize
println!("{:#?}", resp);
Ok(())
}