8 Repos
Adapters that allow HTTP libraries to use different underlying network engines.
Distinct from Integration Adapters: Specifically covers HTTP client backend adapters, not general architectural integration patterns.
Explore 8 awesome GitHub repositories matching software engineering & architecture · HTTP Client Adapters. Refine with filters or upvote what's useful.
Pollyjs is an HTTP mocking and recording library designed to capture and replay network interactions to create deterministic tests. It functions as a request interceptor and stubbing framework that records real API responses into files, ensuring consistent test results across different environments without relying on live network servers. The tool utilizes pluggable network adapters to support various environments and employs a state-based mode switching system to toggle between recording, replaying, and stubbing behaviors. It uses pattern-based request matching and persistent interaction sto
Abstracts the underlying HTTP client to support different environments like browsers or Node.js.
Octokit.js is a GitHub API SDK used to interact with GitHub via REST and GraphQL interfaces. It serves as a client for executing typed queries and mutations, managing authenticated REST requests, and handling signed webhooks across Node.js, Deno, and browser environments. The library features a plugin-based request pipeline and an adapter-based HTTP client, allowing the interception of requests and responses across different runtimes. It employs strategy-based authentication to separate credential management from request logic, supporting static tokens, OAuth flows, and GitHub App installatio
Abstracts network requests using adapters to ensure compatibility across Node.js and browser runtimes.
Faraday is an HTTP client library for Ruby that sends requests and processes responses through a middleware pipeline with pluggable adapters. Its core identity is built around a middleware-pipeline architecture where HTTP requests and responses flow through a chain of components that can modify, log, or transform data before reaching the backend, combined with an adapter-based backend abstraction that delegates HTTP execution to interchangeable backends like Net::HTTP or Typhoeus. The library distinguishes itself through a parallel-execution engine that dispatches multiple HTTP requests concu
Making HTTP requests from Ruby applications with a consistent interface that works across multiple backend adapters.
Lidarr ist ein Musikbibliotheks-Automatisierungsmanager und Client-Controller, der Künstler auf neue Veröffentlichungen überwacht und den Erwerb von Musik via BitTorrent und Usenet automatisiert. Er dient als Metadaten-Organizer und Integrator, der Download-Clients mit Medienservern verbindet, um eine vollständige und aktuelle digitale Musiksammlung zu pflegen. Das System unterscheidet sich durch automatisierte Bibliotheksverwaltung, wie das Scannen nach fehlenden Titeln, um Lücken zu füllen, und die Überwachung auf höherwertige Versionen existierender Dateien, um automatische Qualitäts-Upgrades durchzuführen. Es verwendet konfigurierbare Namensmuster, um Audiodateien umzubenennen und Ordner zu organisieren, wodurch eine konsistente lokale Dateisystemstruktur sichergestellt wird. Die breiten Funktionen umfassen automatisiertes Download-Management, manuelle Veröffentlichungssuche und die Fähigkeit, fehlgeschlagene Downloads durch die Suche nach alternativen Veröffentlichungen zu handhaben. Die Software synchronisiert zudem Bibliotheks-Updates und Metadatenänderungen mit Media-Playern und Servern.
Implements a standardized adapter pattern to support a wide range of BitTorrent and Usenet clients.
Typhoeus is a Ruby wrapper for libcurl that functions as a session-based HTTP client. It provides an interface for making both synchronous and asynchronous network requests. The project acts as a parallel request manager, using a managed queue to execute multiple network requests concurrently. It further distinguishes itself as a mocking tool for stubbing requests with predefined responses and as a caching layer that stores responses to avoid redundant network calls. The library covers a broad range of capabilities including session cookie management, response body streaming for large files,
Provides a backend adapter to connect the Faraday HTTP library with the underlying libcurl engine.
Geocoder ist eine PHP-Bibliothek zur Konvertierung von Adressen in geografische Koordinaten und Koordinaten zurück in Adressen unter Verwendung verschiedener Dienste von Drittanbietern. Sie fungiert als Multi-Provider-Geocoding-Wrapper und Reverse-Geocoding-Engine und bietet eine Abstraktionsschicht zur Verwaltung mehrerer Geocoding-APIs. Das Projekt ermöglicht das Umschalten zwischen Anbietern oder das Verketten von Anfragen für Failover, um eine hohe Verfügbarkeit zu gewährleisten. Es dient zudem als GeoIP-Standortauflöser, der IP-Adressen in geografische Koordinaten und Standortdetails übersetzt, entweder über Remote-Dienste oder lokale Binärdatenbanken. Die Bibliothek enthält Funktionen zum Exportieren von Standort- und Adressobjekten in standardisierte geografische Formate. Sie bietet Dienstprogramme für benutzerdefinierte Adress-String-Formatierung, gebietsschema-bewusste Abfragen und Ergebnis-Caching, um redundante Netzwerkanfragen zu reduzieren. Das System unterstützt die Implementierung benutzerdefinierter Anbieter und enthält Performance-Profiling, um die Zeit und den Speicherverbrauch für Geolokalisierungsaufrufe zu messen.
Implements interchangeable HTTP client adapters to handle network requests across different geocoding providers.
Diese Bibliothek dient als Brücke zwischen Netzwerk-Service-Interfaces und asynchronen Concurrency-Primitiven. Sie ermöglicht den nicht-blockierenden Datenabruf durch die Umwandlung standardmäßiger synchroner Netzwerk-Request-Objekte in Deferred-Typen, was es Entwicklern erlaubt, Hintergrundaufgaben durch strukturierte Concurrency-Muster zu verwalten. Das Projekt fungiert als Plugin für Netzwerk-Service-Definitionen und nutzt dynamische Proxy-Generierung, um Methodenaufrufe zur Laufzeit abzufangen. Durch das Mapping von Response-Streams direkt auf Coroutine-basierte Futures erleichtert es die Ausführung von Remote-API-Anfragen, ohne den Haupt-Anwendungsthread zu unterbrechen. Diese Funktionen unterstützen die Integration von Netzwerkoperationen in die Lebenszyklen mobiler Anwendungen und stellen sicher, dass der Datenabruf im Hintergrund reaktionsfähig bleibt. Die Bibliothek wurde entwickelt, um bestehende Netzwerk-Client-Interfaces um moderne asynchrone Programmierabläufe zu erweitern.
Transforms synchronous call objects into deferred types for structured concurrency within network service definitions.
This library provides a standardized abstraction layer for PHP HTTP clients, enabling consistent request handling across diverse network transport implementations. It serves as a foundational toolkit for developers to manage network communication through unified interfaces, ensuring that application logic remains decoupled from specific underlying transport libraries. The project distinguishes itself through a decorator-based pipeline and a plugin-driven lifecycle system. These mechanisms allow for the interception and modification of request and response data, as well as the injection of cus
Standardizes how applications interact with various network libraries by using consistent adapters that hide underlying implementation details.