Rust HTTP Client

Open-source Rust projects categorized as HTTP Client

Top 12 Rust HTTP Client Projects

  • hyper

    An HTTP library for Rust (by hyperium)

    Project mention: The Linux Kernel Prepares for Rust 1.77 Upgrade | news.ycombinator.com | 2024-02-18

    > If you are equally picky and constrain yourself to parts of the ecosystem which care about binary size, you still have more options and can avoid size issues.

    What's an example of this for, say, libcurl? On my system it has a tiny number of recursive dependencies, around a dozen. [0] Furthermore if I want to write a C program that uses libcurl I have to download zero bytes of data ... because it's a shared library that is already installed on my system, since so many programs already use it.

    I don't really know the appropriate comparison for Rust. reqwest seems roughly comparable, but it's an HTTP client library, and not a general purpose network client like curl. Obviously curl can do a lot more. Even the list of direct dependencies for reqwest is quite long [1], and it's built on top of another http library [2] that has its own long list of dependencies, a list that includes tokio, no small library itself.

    In terms of final binary size, the installed size of the curl package on my system, which includes both the command line tool and development dependencies for libcurl, is 1875.03 KiB.

    [0] I'm excluding the dependency on the ca-certificates package, since this only provides the certificate chain for TLS and lots of programs rely on it.

    [1] https://crates.io/crates/reqwest/0.11.24/dependencies

    [2] https://crates.io/crates/hyper/0.14.28/dependencies

  • hurl

    Hurl, run and test HTTP requests with plain text.

    Project mention: Is there a good REST API development tool like Postman written in Rust? | /r/rust | 2023-10-20

    I haven't used it myself, but maybe something like Hurl? It's not a GUI like Postman though

  • WorkOS

    The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.

  • reqwest

    An easy and powerful Rust HTTP Client

    Project mention: The Linux Kernel Prepares for Rust 1.77 Upgrade | news.ycombinator.com | 2024-02-18

    > If you are equally picky and constrain yourself to parts of the ecosystem which care about binary size, you still have more options and can avoid size issues.

    What's an example of this for, say, libcurl? On my system it has a tiny number of recursive dependencies, around a dozen. [0] Furthermore if I want to write a C program that uses libcurl I have to download zero bytes of data ... because it's a shared library that is already installed on my system, since so many programs already use it.

    I don't really know the appropriate comparison for Rust. reqwest seems roughly comparable, but it's an HTTP client library, and not a general purpose network client like curl. Obviously curl can do a lot more. Even the list of direct dependencies for reqwest is quite long [1], and it's built on top of another http library [2] that has its own long list of dependencies, a list that includes tokio, no small library itself.

    In terms of final binary size, the installed size of the curl package on my system, which includes both the command line tool and development dependencies for libcurl, is 1875.03 KiB.

    [0] I'm excluding the dependency on the ca-certificates package, since this only provides the certificate chain for TLS and lots of programs rely on it.

    [1] https://crates.io/crates/reqwest/0.11.24/dependencies

    [2] https://crates.io/crates/hyper/0.14.28/dependencies

  • ht

    Friendly and fast tool for sending HTTP requests

    Project mention: Curl is now a CVE Numbering Authority | news.ycombinator.com | 2024-01-18

    No need to use curl, make HTTP requests great again with https://github.com/ducaale/xh

  • ureq

    A simple, safe HTTP client

    Project mention: Thermostat Control for Ecobee | /r/rust | 2023-05-29

    I also enjoyed using ureq as an http client.

  • curl-rust

    Rust bindings to libcurl

    Project mention: Hurl 3.0.0, run and test HTTP requests with plain text and curl | /r/rust | 2023-05-06

    Under the hood, Hurl uses curl with Rust bindings (thanks to the awesome curl-rust crate)

  • isahc

    The practical HTTP client that is fun to use.

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

  • goose

    Load testing framework, inspired by Locust (by tag1consulting)

  • dot-http

    dot-http is a text-based scriptable HTTP client

    Project mention: HTTPie Desktop: cross-platform API testing client for humans | news.ycombinator.com | 2023-10-08
  • wasmedge_hyper_demo

    Lightweight HTTP servers based on hyper / warp frameworks in the WasmEdge Runtime.

    Project mention: Release: WasmEdge 0.12 and 0.12.1 | news.ycombinator.com | 2023-05-28

    https://github.com/second-state/microservice-rust-mysql

    https://github.com/WasmEdge/wasmedge-db-examples

    https://github.com/WasmEdge/wasmedge_hyper_demo

    WasmEdge is already one of the smallest and most efficient Wasm runtimes out there. It embeds into libsql (SQLite on the server!) to execute user definited functions to perform complex tasks like HTTPS web services & AI inference from SQL statements! https://wasmedge.org/docs/embed/use-case/libsql/

    The WasmEdge C++ and Rust SDKs allow host applications to embed Wasm functions asynchronously. It is critically important in many applications where the embedded Wasm function is simply not allowed to block the execution of the host applications. https://github.com/second-state/wasmedge-rustsdk-examples/bl...

    Asynchronous host SDKs are complex and a lot of work still remains. We are continuously improving it with our end user and partner communities.

    Preview: https://github.com/L-jasmine/WasmEdge/tree/feat/async

    What's coming next?

    * Support plugins in our Docker and k8s integrations

  • curl-rs

    A curl(libcurl) mod for rust.

  • github-stats

    Generate GitHub traffic statistics charts (by raspi)

    Project mention: raspi/github-stats v0.2.0: Generate GitHub traffic statistics charts | /r/rust | 2023-04-18
NOTE: The open source projects on this list are ordered by number of github stars. The number of mentions indicates repo mentiontions in the last 12 Months or since we started tracking (Dec 2020). The latest post mention was on 2024-02-18.

Rust HTTP Client related posts

Index

What are some of the best open-source HTTP Client projects in Rust? This list will help you:

Project Stars
1 hyper 13,566
2 hurl 10,110
3 reqwest 8,775
4 ht 4,574
5 ureq 1,514
6 curl-rust 983
7 isahc 674
8 goose 644
9 dot-http 152
10 wasmedge_hyper_demo 70
11 curl-rs 2
12 github-stats 0
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com