Crates.io | idcurl |
lib.rs | idcurl |
version | 0.5.2 |
source | src |
created_at | 2019-06-17 05:24:24.892416 |
updated_at | 2024-08-02 17:29:48.553748 |
description | Idiomatic synchronous http client based on curl |
homepage | |
repository | https://github.com/njaard/idcurl |
max_upload_size | |
id | 141675 |
size | 42,662 |
idcurl is a synchronous HTTP client using curl (and inheriting all of its protocol support).
It's useful if you absolutely don't want to use futures.
One of two crates (along with isahc) to support Unix domain sockets!
The most basic request:
let mut output = vec!();
idcurl::get("http://example.com")
.expect("error making request")
.copy_to(&mut output)
.unwrap();
You can also configure your request:
let body = r#"{ "hello": "world" }"#;
let mut response = idcurl::Request::post(
"http://example.com".to_string()
)
.header("Content-Type", "application/json")
.body(std::io::Cursor::new(body))
.send()
.expect("http request");
assert!(response.status().is_success());
std::io::copy(&mut response, &mut std::io::stdout())
.expect("reading response");