Simple, minimal-dependency HTTP client.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Jens Pitkänen 8d7cabfdbd Bump to dev version 2 months ago
examples Change body type, add examples 2 years ago
src Bump to dev version 2 months ago
tests Add optional header and status line length caps 3 months ago
.gitignore Add rest of the Methods and parse status lines 3 years ago
.travis.yml Update .travis.yml 2 months ago Release 2.4.2 2 months ago Restructure, document, and license the crate 3 years ago
Cargo.toml Bump to dev version 2 months ago Release 2.4.0 2 months ago Add more https libraries 1 year ago

minreq Documentation CI

Simple, minimal-dependency HTTP client. Optional features for json responses (json-using-serde), unicode domains (punycode), http proxies (proxy), and https with various TLS implementations (https-rustls, https-rustls-probe, https-bundled, https-bundled-probe,https-native, and https which is an alias for https-rustls).

Without any optional features, my casual testing indicates about 100 KB additional executable size for stripped release builds using this crate. Compiled with rustc 1.45.2, println!("Hello, World!"); is 239 KB on my machine, where the hello example is 347 KB. Both are pure Rust, so aside from libc, everything is statically linked.

Note: some of the dependencies of this crate (especially serde and the various https libraries) are a lot more complicated than this library, and their impact on executable size reflects that.


Planned for 3.0.0

This is a list of features I'll implement once it gets long enough, or a severe enough issue is found that there's good reason to make a major version bump.

  • Change the response/request structs to allow multiple headers with the same name.
  • Set sane defaults for maximum header size and status line length. The ability to add maximums was added in response to #55, but defaults for the limits is a breaking change.


This crate is distributed under the terms of the ISC license.