📖 A curated list of HTTP clients for various languages & libraries
Pull Requests welcomed. Please see the Contributing Guide before opening a Pull Request.
| Name | Description | GitHub Activity |
|---|
| Axios | Promise based HTTP client for the browser and node.js |  |
| node-fetch | A light-weight module that brings the Fetch API to Node.js |  |
| Got | 🌐 Human-friendly and powerful HTTP request library for Node.js |  |
| superagent | Ajax for Node.js and browsers (JS HTTP client) |  |
| Needle | Nimble, streamable HTTP client for Node.js. With proxy, iconv, cookie, deflate & multipart support. |  |
| Name | Description | GitHub Activity |
|---|
| Requests | A simple, yet elegant, HTTP library. |  |
| urllib3 | Python HTTP library with thread-safe connection pooling, file post support, user friendly, and more. |  |
| httplib2 | Small, fast HTTP client library for Python. Features persistent connections, cache, and Google App … |  |
| GRequests | Requests + Gevent = <3 |  |
| Uplink | A Declarative HTTP Client for Python |  |
| Name | Description | GitHub Activity |
|---|
| Eclipse Jetty | Eclipse Jetty® - Web Container & Clients - supports HTTP/2, HTTP/1.1, HTTP/1.0, websocket, servlets… |  |
| OkHttp | Square’s meticulous HTTP client for the JVM, Android, and GraalVM. |  |
| Heritrix | Heritrix is the Internet Archive's open-source, extensible, web-scale, archival-quality web crawler… |  |
| Apache HttpClient | Mirror of Apache HttpClient |  |
| Google HTTP Client Library | Google HTTP Client Library for Java |  |
| Http Request | Java HTTP Request Library |  |
| Name | Description | GitHub Activity |
|---|
| reqwest | An easy and powerful Rust HTTP Client |  |
| hyper | An HTTP library for Rust |  |
| Isahc | The practical HTTP client that is fun to use. |  |
| Surf | Fast and friendly HTTP client framework for async Rust |  |
| curl-rust | Rust bindings to libcurl |  |
| Name | Description | GitHub Activity |
|---|
| Alamofire | Elegant HTTP Networking in Swift |  |
| SwiftHTTP | Thin wrapper around NSURLSession in swift. Simplifies HTTP requests. |  |
| Net | Http Request wrapper written in Swift |  |
| Moya | Network abstraction layer written in Swift. |  |
| Just | Swift HTTP for Humans |  |
| Kingfisher | A lightweight, pure-Swift library for downloading and caching images from the web. |  |
| Name | Description | GitHub Activity |
|---|
| Req | An HTTP client library |  |
| http-client | An HTTP client engine, intended as a base layer for more user-friendly packages. |  |
| servant-client | Main repository for the servant libraries — DSL for describing, serving, querying, mocking, documen… |  |
| http-streams | Haskell HTTP client library for use with io-streams |  |
| Name | Description | GitHub Activity |
|---|
| Req | Simple Go HTTP client with Black Magic |  |
| Resty | Simple HTTP and REST client library for Go |  |
| Sling | A Go HTTP client library for creating and sending API requests |  |
| requests | A golang HTTP client library. Salute to python requests. |  |
| Name | Description | GitHub Activity |
|---|
| Apache Serf | Mirror of Apache Serf |  |
| Curl for People | C++ Requests: Curl for People, a spiritual port of Python Requests. |  |
| cpp-netlib | The C++ Network Library Project -- cross-platform, standards compliant networking library. |  |
| Webcc | Lightweight C++ HTTP client and server library based on Asio for embedding purpose. |  |
| Proxygen | A collection of C++ HTTP libraries including an easy to use HTTP server. |  |
| cpp-httplib | A C++ header-only HTTP/HTTPS server and client library |  |
| NFHTTP | A cross platform C++ HTTP library that interfaces natively to other platforms. |  |
| EasyHttp | A cross-platform HTTP client library with a focus on usability and speed |  |
| Name | Description | GitHub Activity |
|---|
| Guzzle | Guzzle, an extensible PHP HTTP client |  |
| HTTPlug | HTTPlug, the HTTP client abstraction for PHP |  |
| HTTP Client | Async HTTP/1.1+2 client for PHP based on Amp. |  |
| SendGrid HTTP Client | SendGrid's PHP HTTP Client for calling APIs |  |
| Buzz | PHP's lightweight HTTP client |  |
| Name | Description | GitHub Activity |
|---|
| HTTPie | As easy as /aitch-tee-tee-pie/ 🥧 Modern, user-friendly command-line HTTP client for the API era. J… |  |
| curl | A command line tool and library for transferring data with URL syntax, supporting DICT, FILE, FTP, … |  |
| aria2 | aria2 is a lightweight multi-protocol & multi-source, cross platform download utility operated in c… |  |
| HTTP Prompt | An interactive command-line HTTP and API testing client built on top of HTTPie featuring autocomple… |  |
| Resty | Little command line REST client that you can use in pipelines (bash or zsh). |  |
| Ain | A HTTP API client for the terminal |  |