15 dépôts
Custom logic for executing asynchronous network requests to servers.
Distinct from HTTP Request Utilities: Candidates focus on mirroring, orchestrating, or manipulating protocols, whereas this is a basic HTTP request utility.
Explore 15 awesome GitHub repositories matching web development · HTTP Client Implementations. Refine with filters or upvote what's useful.
This project is a JavaScript full-stack tutorial providing a step-by-step guide to building a complete web application from scratch. It focuses on the manual implementation of a custom JavaScript toolchain, encompassing the development of a server-side rendering workflow and a client-side state manager. The project distinguishes itself by implementing core development utilities without high-level frameworks, including custom solutions for bundling, transpilation, linting, and hot module replacement. It also features a real-time communication system based on WebSockets for bidirectional messag
Implements a standardized interface for making asynchronous HTTP network calls to a server.
Proxygen is a collection of C++ libraries for building high-performance HTTP servers and clients. It provides a protocol parser that converts raw network bytes into high-level transaction objects and includes a network stack for processing web traffic over the QUIC transport protocol. The project implements a layered protocol abstraction and a QUIC-based transport integration to support multiple versions of the HTTP standard, including HTTP/3. It utilizes state-machine based parsing and an event-driven I/O loop to manage concurrent network connections. The library covers asynchronous buffer
Provides a standardized interface for issuing asynchronous network requests to remote servers and processing responses.
Inertia is a server-driven frontend framework designed to create monolithic single page applications. It acts as a state synchronization protocol and client-side routing bridge, allowing developers to build interactive experiences using modern JavaScript component libraries while keeping routing and controllers on the server. This approach eliminates the need for a separate REST or GraphQL API layer by passing data from server controllers to frontend components as props via JSON payloads. The framework distinguishes itself by utilizing adapter-based integration to link various backend environ
Allows replacing the default XHR client with a custom implementation to control network request execution.
NSwag is an OpenAPI toolchain for .NET that provides a suite of generators for converting OpenAPI specifications and JSON schemas into clients, server stubs, and structured documentation. It enables the creation of type-safe client libraries and data transfer objects, as well as the generation of OpenAPI specifications by analyzing .NET controllers. The project supports contract-first API development by generating server controller stubs from specifications and offers dedicated TypeScript API integration to ensure type safety in frontend applications. It also provides tools for hosting intera
Enables generated clients to inherit from a specified base class to control how the underlying HTTP client is instantiated.
JMComic-Crawler-Python is a high-performance asynchronous web scraper and API client designed to programmatically retrieve images and metadata from a comic hosting service. It functions as a media archiving tool for batch downloading albums and chapters, automating the process of saving content to a local filesystem. The project is distinguished by its ability to reverse server-side pixel obfuscation, using a decryption tool to reconstruct sliced and shuffled images. To maintain stable connectivity, it utilizes a network bypass utility featuring dynamic domain rotation and proxy routing to ci
Provides the ability to replace the default HTTP client with a custom implementation.
Orval is an OpenAPI-to-TypeScript code generator that produces fully typed API clients, data-fetching hooks, mock data, validation schemas, and server handlers from OpenAPI or Swagger specifications. It reads any YAML or JSON API specification and generates TypeScript interfaces, HTTP request functions, and framework-specific integration code that ensures compile-time correctness for all API calls. The project distinguishes itself by generating production-ready data-fetching hooks for React Query, Vue Query, Svelte Query, Solid Query, Angular, and SWR, complete with automatic cache invalidati
Provides a pluggable HTTP client architecture that swaps between fetch, Axios, or custom implementations.
HTTParty est une bibliothèque client HTTP Ruby conçue pour construire des clients API standardisés. Elle abstrait les primitives réseau de bas niveau en une interface de haut niveau, permettant aux développeurs d'encapsuler les URI de base et les configurations de requête au sein de classes pour maintenir des interactions cohérentes avec les services web distants. La bibliothèque automatise la transformation des données de réponse réseau brutes en structures Ruby natives en utilisant un système basé sur un registre qui analyse le contenu en fonction des en-têtes de réponse. Elle fournit également des mécanismes spécialisés pour envoyer des données de formulaire multipart et streamer de gros payloads pour maintenir l'efficacité mémoire lors des transferts de fichiers. Le projet couvre un large éventail de capacités réseau, incluant l'exécution d'opérations HTTP standards, la transmission de payload JSON et la gestion de connexions TLS sécurisées. Il inclut des outils pour l'authentification des requêtes, la décompression des réponses et la journalisation du trafic réseau à des fins de débogage. La bibliothèque fournit également une interface en ligne de commande pour interroger les services web et visualiser les données de réponse sous forme d'objets structurés.
Defines base URIs and default headers within classes to ensure consistent communication patterns.
Authlib est un framework Python complet pour implémenter des clients et serveurs OAuth 1.0, OAuth 2.0 et OpenID Connect. Il fournit une boîte à outils complète pour la gestion d'identité, couvrant le développement de serveurs d'autorisation, de serveurs de ressources et d'intégrations côté client. La bibliothèque se distingue par une implémentation complète des spécifications JOSE, incluant les JSON Web Tokens (JWT), le chiffrement, les signatures et les clés. Elle propose des capacités spécialisées pour l'authentification non interactive via des frameworks d'assertion de compte de service et une couche de correction de conformité conçue pour gérer les fournisseurs d'identité qui s'écartent des spécifications officielles. Le projet couvre un large éventail d'opérations de sécurité et d'identité, incluant les cycles de vie des jetons basés sur les grants, la sécurité PKCE et l'enregistrement dynamique de clients. Il fournit également des primitives cryptographiques pour divers algorithmes de signature et des utilitaires pour automatiser les mises à jour de jetons et la persistance dans les magasins de données. Authlib utilise une architecture enfichable qui permet l'injection de différentes bibliothèques HTTP synchrones ou asynchrones.
Features a pluggable architecture allowing users to swap synchronous or asynchronous HTTP client implementations.
Forge est une bibliothèque de cryptographie JavaScript fournissant un ensemble complet d'outils pour le chiffrement symétrique et asymétrique, le hachage et les signatures numériques. Elle inclut une implémentation complète de TLS (Transport Layer Security) pour établir des connexions réseau sécurisées et gérer le trafic chiffré. Le projet implémente une large gamme d'outils d'infrastructure à clé publique (PKI), incluant la gestion de certificats X.509, la génération de demandes de signature de certificat (CSR) et la validation de chaînes de certificats. Il fournit une boîte à outils cryptographique PKCS pour manipuler des archives sécurisées et des messages signés, ainsi qu'une prise en charge de la gestion des clés SSH et la conversion de clés entre les formats PEM, OpenSSH et PKCS#12. La bibliothèque couvre un large éventail de primitives de sécurité, telles que le chiffrement par bloc, le calcul HMAC et la dérivation de clé basée sur mot de passe. Elle inclut également des utilitaires pour la sérialisation de données binaires utilisant l'encodage ASN.1 DER, ainsi que des outils de transformation de données pour les formats Base58, Base64 et hexadécimal. Les capacités supplémentaires incluent des utilitaires de communication réseau bas niveau pour la gestion des requêtes client HTTP et l'orchestration de tâches asynchrones pour la mise en file d'attente d'opérations en arrière-plan.
Provides a pooled socket implementation for executing network requests.
This project is a Go language library and API SDK designed for integrating with the WeChat ecosystem. It provides a programmatic interface to manage official accounts, mini programs, and enterprise platform features. The SDK features an interface-based client design that abstracts various API categories into specialized objects. It includes a dedicated OAuth 2.0 authorization client to manage access tokens, authentication tickets, and third-party authorization flows, alongside a pluggable token caching system to share credentials across different environments. The library covers broad capabi
Implements an interface-based client design to abstract different API categories into specialized objects.
Beast est une bibliothèque C++ pour l'implémentation de clients et serveurs HTTP et WebSocket de bas niveau. Il fonctionne comme un framework réseau asynchrone conçu pour composer des opérations d'E/S non bloquantes et des piles de flux en couches pour gérer le trafic réseau concurrent, utilisant spécifiquement le modèle asynchrone Boost.Asio. La bibliothèque fournit une implémentation complète des protocoles HTTP/1.1 et WebSocket. Pour HTTP, elle inclut des primitives pour l'analyse et la sérialisation des messages avec prise en charge du transfert encodé par blocs (chunked transfer encoding), la lecture incrémentale du corps et le pipelining des requêtes. Son implémentation WebSocket couvre le cycle de vie complet de la communication bidirectionnelle, y compris les handshakes, la négociation de sous-protocoles, la fragmentation des messages et la surveillance de la vivacité via des trames de contrôle. Beast inclut une suite spécialisée d'outils pour la gestion des tampons réseau afin d'optimiser les E/S scatter-gather via des tampons mémoire dynamiques et basés sur des séquences. Elle couvre également la communication réseau sécurisée en intégrant des couches SSL/TLS pour les flux chiffrés, l'authentification par certificat et la terminaison sécurisée des connexions. Le framework fournit des abstractions multiplateformes pour les E/S de fichiers et la gestion des signaux système afin de soutenir le développement d'applications réseau stables.
Provides custom logic for executing asynchronous network requests and parsing responses from remote servers.
PRAW est un wrapper Python pour l'API Reddit, fonctionnant comme un client API REST et un crawler de données de réseaux sociaux. Il fournit une interface programmatique pour récupérer des données, gérer le contenu d'un compte et interagir avec la plateforme. La bibliothèque implémente un client OAuth 2.0 complet prenant en charge plusieurs flux d'autorisation, y compris les mots de passe, les jetons implicites et de rafraîchissement, ainsi que l'accès invité en lecture seule. Elle se distingue par un planificateur de requêtes conscient des limites de débit qui suit le bridage côté serveur pour éviter l'épuisement du quota API, et utilise des objets de ressources à chargement différé pour ne récupérer les données que lorsque des attributs spécifiques sont accédés. Les capacités couvrent la gestion des communautés et des utilisateurs, le streaming de soumissions en temps réel via des générateurs, et l'extraction de fils de discussion imbriqués. L'ensemble d'outils inclut également la gestion de contenu pour créer des posts et des commentaires, ainsi que des options de configuration réseau pour les sessions personnalisées et le routage via proxy.
Provides a pluggable architecture to replace the default HTTP session with custom requestor classes.
Ce projet est un modèle d'architecture iOS en Swift qui implémente le pattern Clean Architecture. Il organise le logiciel en couches distinctes pour découpler les règles métier des frameworks externes, des interfaces utilisateur et de l'infrastructure, afin d'améliorer la testabilité et la maintenance. Le modèle intègre le Domain-Driven Design (DDD) pour isoler la logique métier principale et utilise une structure d'application modulaire pour diviser les fonctionnalités en modules indépendants. Il emploie le pattern Coordinator pour supprimer la logique de routage des contrôleurs de vue et un framework d'injection de dépendances pour garantir que les composants restent indépendants et interchangeables. L'architecture tire également parti de la gestion d'état réactive pour découpler la logique de la couche de vue et utilise une infrastructure basée sur des interfaces pour permettre le remplacement des fournisseurs de données sans modifier les règles métier.
Defines repository contracts in the domain layer to allow swapping of data providers without modifying business rules.
openai-go is an LLM SDK for Go and a client for interacting with OpenAI services. It provides type-safe bindings to generate text, images, and audio via REST endpoints, enabling the integration of large language models and AI assistant orchestration into Go applications. The library serves as an agent orchestration tool for managing stateful conversation threads and autonomous agents with integrated tool calling and file search. It also functions as an asynchronous batch processing client for monitoring large-scale request groups and fine-tuning jobs, alongside a management SDK for controllin
Provides an interface-based HTTP client allowing the network transport to be replaced for testing and proxying.
The AWS SDK for Java is a set of client libraries providing a programmatic interface for managing cloud resources and services through the Java language and JVM. It serves as a cloud service client library for executing synchronous and asynchronous API calls to infrastructure components. The library is distinguished by its use of non-blocking asynchronous I/O and a reactive cloud client model, utilizing publishers and subscribers to stream data and manage backpressure. It employs a modular design to decouple services and reduce binary size, while utilizing immutable builders for thread-safe c
Supports the use of custom HTTP client implementations for executing network requests.