slimweb

Crates.ioslimweb
lib.rsslimweb
version0.3.0
sourcesrc
created_at2020-03-14 00:23:12.050907
updated_at2020-03-28 01:51:17.23627
descriptionSlim HTTP 1.1 client/server library
homepage
repositoryhttps://github.com/MirrorBytes/slimweb
max_upload_size
id218405
size70,724
Bob (MirrorBytes)

documentation

README

slimweb

Slim HTTP 1.1 client/server library.

I felt compelled (or inspired if you will) to write this library after reading this article: https://medium.com/@shnatsel/smoke-testing-rust-http-clients-b8f2ee5db4e6

More on the controversial side of the Rust community, it seemed quite interesting how such eloquent libraries could be riddled down to such minor details that could cause major problems. So, I'm throwing another into the mix that will probably hit that same point.

  • Rust 2018
  • No async functionality.
  • Decisively using deadlines for DoS prevention (didn't want to deal with leaky thread racing).
  • Using Rustls for SSL/TLS encryption.
  • Using flate2 for compression/decompression (GZip only).

Installation

[dependencies]
slimweb = "0.1"

Features

  • Client (default)

  • Server

  • tls (security)

  • json

  • compress (both compression and decompression)

  • punycode (for client only)

  • multipart (multipart/form-data)

ITW

  • Server deadlines
  • 100-Continue
  • Multipart/form-data
  • Strict adherence to deadlines
  • Better tests
Commit count: 12

cargo fmt