13 releases
0.4.3 | Jul 12, 2022 |
---|---|
0.4.2 | Dec 21, 2020 |
0.4.0 | Feb 15, 2020 |
0.3.2 | Sep 20, 2019 |
0.1.1 | Jun 17, 2019 |
#267 in HTTP client
62 downloads per month
28KB
727 lines
Introduction
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.
Examples
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");
lib.rs
:
An idiomatic synchronous Rust library for making HTTP requests.
It's implemented in terms of curl.
Example
let mut output = vec!();
idcurl::get("http://example.com")
.expect("error making request")
.copy_to(&mut output)
.unwrap();
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");
Dependencies
~13–22MB
~312K SLoC