{"repo":"0x676e67/wreq","free":true,"listed":false,"github":"https://github.com/0x676e67/wreq","clone":"git clone https://github.com/0x676e67/wreq.git","description":"An ergonomic, privacy-aware Rust HTTP Client","language":"Rust","stars":979,"topics":["http-client","http2","ja3","ja4","tls","websocket","https","akamai","web-scraper","fingerprint"],"license":"Apache-2.0","category":"networking-infra","readme_excerpt":"wreq [![Discord chat][discord-badge]][discord-url] [discord-badge]: https://img.shields.io/discord/1486741856397164788.svg?logo=discord [discord-url]: https://discord.gg/rfbvyFkgq3 🚀 Help me work seamlessly with open source sharing by sponsoring me on GitHub An ergonomic and modular Rust HTTP Client for high-fidelity protocol matching, featuring customizable TLS, JA3/JA4, and HTTP/2 signature capabilities. Features - Plain bodies, JSON, urlencoded, multipart - HTTP Trailer - Cookie Store - Redirect Policy - Original Header - Rotating Proxies - Tower Middleware - WebSocket Upgrade - HTTPS via BoringSSL - HTTP/2 over TLS Parity - Certificate Store (CAs & mTLS) - Multiple Runtime (Tokio, Compio) Example The following example uses the Tokio runtime with optional features enabled by adding this to your Cargo.toml : And then the code: Behavior - HTTP/1 over TLS In the Rust ecosystem, most HTTP clients rely on the http library, which performs well but does not preserve header case. This causes some WAFs to reject HTTP/1 requests with lowercase headers (see discussion). wreq addresses this by fully supporting HTTP/1 header case sensitivity. - HTTP/2 over TLS Due to the complexity of TLS encryption and the widespread adoption of HTTP/2 , browser fingerprints such as JA3 , JA4 , and Akamai cannot be reliably emulated using simple fingerprint strings. Instead of parsing and emulating these string-based fingerprints, wreq provides fine-grained control over TLS and HTTP/2 extensions and ","default_branch":null,"files":null,"tree":[],"storefront":"/r/0x676e67","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/0x676e67/wreq/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}