Please check the build logs for more information.
See Builds for ideas on how to fix a failed build, or Metadata for how to configure docs.rs builds.
If you believe this is docs.rs' fault, open an issue.
rquest
🚀 Help me work seamlessly with open source sharing by sponsoring me on GitHub
An ergonomic, all-in-one HTTP client for emulating any browser with TLS, JA3/JA4, and HTTP2 fingerprints.
Features
- Plain, JSON, urlencoded, multipart bodies
- Header Order
- Redirect Policy
- Cookie Store
- HTTP Proxies
- WebSocket Upgrade
- HTTPS via BoringSSL
- Perfectly Chrome, Safari, and Firefox
Example
This asynchronous example uses Tokio and enables some optional features. Your Cargo.toml could look like this:
[]
= { = "1", = ["full"] }
= "2.0.0"
And then the code:
use ;
async
Emulation
-
HTTP/2 over TLS
JA3/JA4/Akamai fingerprints cannot accurately simulate browser fingerprints due to the sophistication of TLS encryption and the popularity of HTTP/2.
rquestdoes not plan to support parsing these fingerprint strings for simulation. Users are encouraged to customize the configuration according to their own needs. -
Emulation Device
In fact, most device models have the same
TLS/HTTP2configuration, except that theUser-Agentis changed.Browser Versions Chrome Chrome100,Chrome101,Chrome104,Chrome105,Chrome106,Chrome107,Chrome108,Chrome109,Chrome114,Chrome116,Chrome117,Chrome118,Chrome119,Chrome120,Chrome123,Chrome124,Chrome126,Chrome127,Chrome128,Chrome129,Chrome130,Chrome131,Chrome132,Chrome133Edge Edge101,Edge122,Edge127,Edge131Safari SafariIos17_2,SafariIos17_4_1,SafariIos16_5,Safari15_3,Safari15_5,Safari15_6_1,Safari16,Safari16_5,Safari17_0,Safari17_2_1,Safari17_4_1,Safari17_5,Safari18,SafariIPad18,Safari18_2,Safari18_1_1OkHttp OkHttp3_9,OkHttp3_11,OkHttp3_13,OkHttp3_14,OkHttp4_9,OkHttp4_10,OkHttp5Firefox Firefox109,Firefox117,Firefox128,Firefox133,Firefox135,FirefoxPrivate135,FirefoxAndroid135
Building
Do not compile with packages that depend on openssl-sys; it links with the same prefix symbol as boring-sys, which can cause link failures and other problems. Even if compilation succeeds, using both openssl-sys and boring-sys as dependencies can cause memory segmentation faults.
Install the dependencies required to build BoringSSL
sudo apt-get install build-essential cmake perl pkg-config libclang-dev musl-tools -y
cargo build --release
This GitHub Actions workflow can be used to compile the project on Linux, Windows, and macOS.
License
Released under the Apache-2.0 License.
Contribution
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be licensed as above, without any additional terms or conditions.
Sponsors
Support this project by becoming a sponsor.
Accolades
The project is based on a fork of reqwest.