httpx - multi-purpose HTTP toolkit
by
Admin
![](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhrr-ec2AdK0R_OpKP-zTurfkhXC-vvFa6AHtfPZTWWrVW4uRLdl6JeeGwLi24gZVmnGqN9FUfoEAmA4i00ZDg5d9Pr8d8-dxEBVEHtH-h1gJJ2FkGwF-CBfGszEJRyy_KoBYMJRhGM7Czw/w640-h306-rw/135731750-4c1d38b1-bd2a-40f9-88e9-3c4b9f6da378.png)
httpx is a fast and multi-purpose HTTP toolkit allows to run of multiple probers using retryablehttp library, it is designed to maintain the result reliability with increased threads.
Features
- Simple and modular codebase making it easy to contribute.
- Fast And fully configurable flags to probe multiple elements.
- Supports multiple HTTP-based probings.
- Smart auto fallback from https to http as default.
- Supports hosts, URLs, and CIDR as input.
- Handles edge cases doing retries, backoffs, etc for handling WAFs.
Installation
httpx requires go1.17 to install successfully. Run the following command to get the repo -
go install -v github.com/projectdiscovery/httpx/cmd/httpx@latest
Notes
- As default, httpx checks for HTTPS probe and fall-back to HTTP only if HTTPS is not reachable.
- For printing both HTTP/HTTPS results, a no-fallback flag can be used.
- Custom scheme for ports can be defined, for example -ports http:443,http:80,https:8443
- vhost, http2, pipeline, ports, csp-probe, tls-probe and path are unique flag with different probes.
- Unique flags should be used for specific use cases instead of running them as default with other flags.
- When using json flag, all the information (default probes) is included in the JSON output.