awesome-repositories.com
Blog
awesome-repositories.com

Découvrez les meilleurs dépôts open-source grâce à notre recherche par IA.

ExplorerRecherches sélectionnéesAlternatives open sourceLogiciels auto-hébergésBlogPlan du site
ProjetÀ proposNotre méthodologiePresseServeur MCP
Mentions légalesConfidentialitéConditions d'utilisation
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·

37 dépôts

Awesome GitHub RepositoriesHTTP Client Libraries

Libraries for performing synchronous and asynchronous HTTP requests, managing connection pools, and handling complex network interactions.

Distinct from Python Web Frameworks: Distinct from Python Web Frameworks: this is a client-side library for making requests, not a server-side framework for building web applications.

Explore 37 awesome GitHub repositories matching networking & communication · HTTP Client Libraries. Refine with filters or upvote what's useful.

Awesome HTTP Client Libraries GitHub Repositories

Trouvez les meilleurs dépôts grâce à l'IA.Nous recherchons les dépôts les plus pertinents grâce à l'IA.
  • requests/requestsAvatar de requests

    requests/requests

    54,070Voir sur GitHub↗

    Requests is a Python HTTP client library used for sending HTTP requests and handling responses. It serves as a network client providing fundamental components for session management, proxy routing, multi-part uploading, and SSL/TLS certificate verification. The project distinguishes itself through a session manager that maintains cookies and reuses TCP connections to improve network performance. It also includes a dedicated multi-part form uploader for transmitting binary data and an integrated SSL/TLS certificate verifier to ensure encrypted and trusted communication. The library covers a b

    Provides a human-readable Python library for performing synchronous HTTP requests and managing connection pools.

    Python
    Voir sur GitHub↗54,070
  • request/requestAvatar de request

    request/request

    25,542Voir sur GitHub↗

    This is an HTTP client library used for sending and receiving network requests. It functions as an HTTP traffic replicator, a multipart form uploader, and an OAuth request signer, while also serving as an HTTP client capable of routing traffic through Unix domain sockets for local inter-process communication. The project distinguishes itself with the ability to import and parse HTTP Archive JSON files to reproduce recorded network traffic. It also provides cryptographic OAuth signing to secure API access using hashing algorithms and supports routing requests through Unix domain sockets using

    Provides a comprehensive library for sending and receiving HTTP requests with support for various methods and authentication.

    JavaScript
    Voir sur GitHub↗25,542
  • guzzle/guzzleAvatar de guzzle

    guzzle/guzzle

    23,453Voir sur GitHub↗

    Guzzle is a PHP HTTP client used for sending synchronous and asynchronous requests to web services. It serves as a concurrent HTTP request manager, an HTTP stream handler, and a middleware-based HTTP pipeline. The project is a PSR-7 compliant client, utilizing standardized PHP interfaces for requests, responses, and streams. The library differentiates itself through a customizable functional handler stack that allows for the interception and modification of the request and response lifecycle. It features an adapter-based transport system that enables swapping between network implementations,

    Acts as a full-featured PHP HTTP client library for synchronous and asynchronous network interactions.

    PHP
    Voir sur GitHub↗23,453
  • sindresorhus/kyAvatar de sindresorhus

    sindresorhus/ky

    16,943Voir sur GitHub↗

    🌳 Tiny & elegant JavaScript HTTP client based on the Fetch API

    An HTTP client library built on the Fetch API for making requests with retries, timeouts, and error handling.

    TypeScriptfetchhttp-clienthttp-request
    Voir sur GitHub↗16,943
  • rapptz/discord.pyAvatar de Rapptz

    Rapptz/discord.py

    15,928Voir sur GitHub↗

    This project is an asynchronous library for the Python programming language designed to facilitate the development of automated agents and interactive applications on the Discord platform. It provides a comprehensive framework for building event-driven software that manages real-time communication, server resources, and user interactions through a structured interface. The library utilizes a non-blocking event loop to handle concurrent network operations, allowing developers to maintain persistent bidirectional connections via WebSockets. It features a declarative system for routing text-base

    A collection of tools for managing HTTP requests and WebSocket connections to interact with external service APIs programmatically.

    Pythonbotdiscorddiscord-api
    Voir sur GitHub↗15,928
  • encode/httpxAvatar de encode

    encode/httpx

    15,090Voir sur GitHub↗

    This project is a comprehensive Python network request framework designed for both synchronous and asynchronous HTTP communication. It provides a high-performance client capable of executing non-blocking requests within event-driven applications, while also supporting standard blocking calls for simpler scripts. The library is built to operate natively across diverse asynchronous runtimes, automatically detecting and utilizing the underlying event loop for concurrency. What distinguishes this library is its modular architecture, which decouples request construction from network execution thro

    A comprehensive toolkit for interacting with web services, handling complex authentication, and managing low-level transport configurations in Python.

    Pythonasynciohttppython
    Voir sur GitHub↗15,090
  • forwardemail/supertestAvatar de forwardemail

    forwardemail/supertest

    14,373Voir sur GitHub↗

    🕷 Super-agent driven library for testing node.js HTTP servers using a fluent API. Maintained for @forwardemail, @ladjs, @spamscanner, @breejs, @cabinjs, and @lassjs.

    Wraps the SuperAgent HTTP library to provide a unified interface for requests and responses.

    JavaScriptassertionsnodesuperagent
    Voir sur GitHub↗14,373
  • pinpoint-apm/pinpointAvatar de pinpoint-apm

    pinpoint-apm/pinpoint

    13,830Voir sur GitHub↗

    Pinpoint is a distributed application performance management tool designed to trace requests and monitor metrics across large-scale distributed architectures. It functions as a request tracer, topology mapper, and JVM application monitor, providing a backend capable of collecting and visualizing trace data from OpenTelemetry compatible sources. The system distinguishes itself through a combination of bytecode-based instrumentation via a Java agent and topology-based visualization that renders live maps of service interconnections. It captures execution flow across asynchronous boundaries, suc

    Tracks the performance and execution of network calls made via the Google HTTP Client library.

    Javaagentapmdistributed-tracing
    Voir sur GitHub↗13,830
  • cfug/dioAvatar de cfug

    cfug/dio

    12,828Voir sur GitHub↗

    Dio is a cross-platform HTTP client for Dart designed to manage network requests and data communication across mobile and desktop applications. It provides a comprehensive framework for executing standard web operations while handling complex tasks such as request lifecycles, connection security, and global configuration. The library distinguishes itself through an extensible architecture that allows developers to hook into the request and response pipeline. By utilizing interceptors and custom network adapters, users can modify traffic, perform authentication, and swap underlying networking

    Supports advanced HTTP operations including multipart file uploads, automatic data transformation, and request lifecycle management.

    Dartadaptercancellabledart
    Voir sur GitHub↗12,828
  • go-resty/restyAvatar de go-resty

    go-resty/resty

    11,704Voir sur GitHub↗

    Resty is a high-level HTTP client library for Go designed for consuming REST services. It provides a streamlined interface for executing network requests, managing server-sent event streams, and automatically mapping JSON and XML responses into data structures. The library includes built-in mechanisms for service resilience and traffic management, such as circuit breakers to prevent cascading failures, token-bucket rate limiting, and automated request retries with exponential backoff. It also features client-side load balancing to distribute outgoing traffic across multiple base URLs and requ

    Provides a high-level, streamlined interface for executing network requests to remote servers and processing responses.

    Gobackoffcircuit-breakercurl-command
    Voir sur GitHub↗11,704
  • seanmonstar/reqwestAvatar de seanmonstar

    seanmonstar/reqwest

    11,675Voir sur GitHub↗

    This library is a high-level networking tool for the Rust programming language, designed to execute HTTP requests and interact with remote services and REST APIs. It provides both asynchronous and blocking interfaces, allowing developers to send data using formats such as JSON or multipart forms while maintaining type-safe communication with external web services. The library distinguishes itself through a comprehensive architecture that manages network sessions and data flow. It utilizes connection pooling to maintain persistent sockets, which reduces latency during consecutive requests to t

    Provides an asynchronous and blocking library for executing HTTP requests with connection pooling and TLS support.

    Rusthttphttp-clientrust
    Voir sur GitHub↗11,675
  • projectdiscovery/httpxAvatar de projectdiscovery

    projectdiscovery/httpx

    10,053Voir sur GitHub↗

    httpx is a suite of tools and libraries for HTTP reconnaissance, infrastructure discovery, and DNS resolution. It functions as a command line toolkit for extracting metadata and status codes from HTTP targets and CIDR ranges, as well as a Go library for integrating these probing capabilities into custom programs. The project distinguishes itself through specialized infrastructure profiling, using TLS fingerprinting to extract JARM hashes and certificate details. It identifies underlying components such as CDN usage, Autonomous System Numbers, and CNAMEs to map web server software and infrastr

    Ships as a Go package for integrating multi-purpose HTTP probing and metadata extraction into custom programs.

    Go
    Voir sur GitHub↗10,053
  • netflix/feignAvatar de Netflix

    Netflix/feign

    9,783Voir sur GitHub↗

    Feign est un client HTTP Java déclaratif qui automatise la génération de clients de services web. Il permet aux développeurs de définir des endpoints d'API REST en utilisant des interfaces et des annotations, supprimant le besoin d'écrire manuellement du code répétitif pour les requêtes et réponses. Le projet utilise des proxys dynamiques pour mapper les appels de méthode vers des modèles de requête HTTP. Il dispose d'un pipeline enfichable d'encodeurs et de décodeurs pour transformer les objets Java en corps de requête et convertir les corps de réponse en objets typés. La bibliothèque couvre un large éventail de capacités d'intégration, incluant l'interception de requêtes pour la gestion des en-têtes, une logique de réessai basée sur des stratégies pour une consommation résiliente des services, et l'expansion de modèles pour les URIs. Elle fournit également des outils pour enregistrer les logs de trafic HTTP et collecter des métriques de performance client.

    Serves as a comprehensive Java library for performing synchronous and asynchronous HTTP requests.

    Java
    Voir sur GitHub↗9,783
  • bitinn/node-fetchAvatar de bitinn

    bitinn/node-fetch

    8,861Voir sur GitHub↗

    node-fetch est une bibliothèque cliente HTTP légère qui implémente l'API Fetch standard des navigateurs pour Node.js. Elle fournit une interface basée sur les promesses pour effectuer des requêtes réseau asynchrones afin de récupérer ou d'envoyer des données depuis des environnements côté serveur. Le projet se spécialise dans la gestion efficace de la mémoire en utilisant le streaming de requêtes et de réponses. Cela permet le traitement incrémental de charges utiles réseau importantes via des flux système natifs pour éviter l'épuisement de la mémoire. La bibliothèque couvre un large éventail de capacités réseau, incluant l'utilisation d'agents HTTP personnalisés pour la configuration DNS et SSL, l'annulation de requêtes via des signaux d'abandon (abort signals), et la gestion de divers encodages de contenu et soumissions de formulaires.

    A lightweight HTTP client library for sending requests and handling responses with streaming support.

    JavaScript
    Voir sur GitHub↗8,861
  • node-fetch/node-fetchAvatar de node-fetch

    node-fetch/node-fetch

    8,857Voir sur GitHub↗

    node-fetch is a promise-based HTTP client library that provides a lightweight implementation of the Fetch API for the Node.js runtime. It serves as a network interface for performing asynchronous HTTP requests, handling server communication, and managing headers. The library utilizes a promise-based request lifecycle to wrap network calls, ensuring asynchronous behavior. It incorporates stream-based handling for both requests and responses to process large payloads efficiently without overloading system memory. Its capabilities cover a broad range of network communication tasks, including th

    Serves as a comprehensive library for performing asynchronous HTTP requests and managing network headers.

    JavaScriptfetchfetch-apihacktoberfest
    Voir sur GitHub↗8,857
  • boundaryml/bamlAvatar de BoundaryML

    BoundaryML/baml

    7,636Voir sur GitHub↗

    BAML is a prompt engineering framework and LLM client generator that defines AI prompts as type-safe functions. It serves as a structured data extraction tool and workflow orchestrator, transforming unstructured model responses into strongly typed objects using a custom schema language and alignment algorithms. The project distinguishes itself by using a compiler to generate language-specific boilerplate code for API communication and output parsing. It features a dedicated environment for designing complex prompt templates with conditional logic and reusable snippets, and employs genetic alg

    Rotates outgoing calls across multiple providers in sequence, including automatic switching during retries.

    Rustbamlboundarymlguardrails
    Voir sur GitHub↗7,636
  • libcpr/cprAvatar de libcpr

    libcpr/cpr

    7,367Voir sur GitHub↗

    C++ est une bibliothèque cliente HTTP de haut niveau et un wrapper pour libcurl. Elle fournit une interface C++ pour effectuer des requêtes réseau, gérer des sessions réseau et implémenter des transferts de données. La bibliothèque se distingue en offrant un client HTTP asynchrone capable d'exécuter des requêtes non bloquantes via des interfaces de rappel (callbacks). Elle fonctionne également comme un téléverseur de formulaires multipart pour transmettre des fichiers et des données structurées, ainsi qu'un gestionnaire de flux SSE pour traiter les événements envoyés par le serveur en temps réel sur des connexions persistantes. Ses capacités plus larges couvrent la communication web sécurisée via le chiffrement SSL et l'authentification des requêtes. Elle inclut des outils pour la gestion de l'état de session via la persistance des cookies, le routage par proxy et le contrôle du timeout des requêtes. L'implémentation utilise la gestion des ressources RAII pour gérer le cycle de vie des handles réseau et des objets de session.

    Implements a modern C++ interface for performing synchronous and asynchronous HTTP requests and managing sessions.

    C++
    Voir sur GitHub↗7,367
  • whoshuu/cprAvatar de whoshuu

    whoshuu/cpr

    7,362Voir sur GitHub↗

    cpr is a C++ networking library that provides a high-level HTTP request client. It functions as a wrapper around libcurl to simplify the process of sending and receiving data from web servers, specifically managing GET and POST calls and multipart form uploads. The library provides both synchronous and asynchronous execution models, allowing network requests to run on background threads to prevent application freezing. It integrates with the C++ Standard Library to map low-level pointers to standard strings and containers, utilizing RAII for automatic resource management. The project covers

    Provides a high-level C++ library for performing synchronous and asynchronous HTTP requests as a wrapper around libcurl.

    C++
    Voir sur GitHub↗7,362
  • j3ssie/osmedeusAvatar de j3ssie

    j3ssie/Osmedeus

    6,425Voir sur GitHub↗

    Osmedeus is a security workflow orchestration engine that coordinates AI agents, shell commands, and scanning tools through declarative YAML pipelines. It functions as a distributed security scanner, a declarative workflow automator, and an AI agent framework for security, enabling automated multi-step security analysis with conditional branching, parallel execution, and distributed workers. The engine distinguishes itself through a hybrid runner model that executes workflow steps on the local host, inside Docker containers, or over SSH to remote machines, selected per step or module. It supp

    Configures a list of LLM providers and automatically falls back to the next one if the primary is unavailable.

    Go
    Voir sur GitHub↗6,425
  • koush/ionAvatar de koush

    koush/ion

    6,269Voir sur GitHub↗

    Ion is an asynchronous HTTP client library for Android that handles network requests, JSON parsing, image loading, and file downloads. It provides a fluent builder pattern for constructing requests and supports automatic JSON deserialization into Java objects using Gson, along with in-memory image caching and multipart form-data encoding. The library distinguishes itself through its support for request cancellation via Future objects, allowing individual or bulk cancellation of in-flight requests to avoid wasted bandwidth and stale callbacks. It also includes proxy-aware request routing for d

    An asynchronous HTTP client for Android that supports request cancellation, JSON parsing, image loading, and file downloads with progress tracking.

    Java
    Voir sur GitHub↗6,269
Préc.12Suivant
  1. Home
  2. Networking & Communication
  3. HTTP Client Libraries

Explorer les sous-tags

  • Client Request MonitoringTracking the performance and latency of requests sent via specific database or search engine clients. **Distinct from HTTP Client Libraries:** Focuses on observing the client-side request performance rather than the library's implementation of HTTP.
  • Provider Rotation1 sous-tagRotating outgoing AI requests across multiple providers to ensure availability. **Distinct from Client Request Monitoring:** Focuses on sequential rotation and automatic switching during retries, distinct from performance monitoring.