31 个仓库
Tools for configuring and modifying network request parameters before they are transmitted to a server.
Explore 31 awesome GitHub repositories matching networking & communication · Request Execution. Refine with filters or upvote what's useful.
Requests is a high-level HTTP client library designed to simplify web communication and API integration. It provides an intuitive, human-readable interface for performing standard network operations, including request execution, connection pooling, and stateful session management. By encapsulating raw network data into structured objects, the library automates the complexities of headers, cookies, and payload transmission. The library distinguishes itself through a modular transport adapter layer that allows for custom protocol handling and extensible authentication hooks. It supports a wide
Modifies request headers and body content manually before transmission to meet specific communication needs.
Crawlee is a web scraping framework designed for building scalable, reliable, and distributed data extraction pipelines. It provides a unified interface for managing headless browser automation and lightweight HTTP requests, allowing developers to handle complex web navigation, dynamic content rendering, and large-scale data collection within a single, modular architecture. The project distinguishes itself through its resource-aware concurrency controller, which dynamically scales task execution based on real-time CPU and memory usage to prevent host machine exhaustion. It also features a rob
Provides tools for configuring and executing network requests to fetch data from target URLs.
Yaak is a cross-platform desktop client and command-line utility designed for developing, testing, and debugging API endpoints. It supports multi-protocol request execution for REST, GraphQL, and gRPC services, providing a unified environment for managing network interactions, authentication credentials, and automated testing workflows. The tool distinguishes itself through a local-first architecture that stores all workspace configurations and request definitions directly on the filesystem. This design enables native integration with version control systems like Git, allowing teams to track
Executes REST, GraphQL, and gRPC requests with path expression inspection for verifying server responses.
Elysia is a high-performance TypeScript web framework designed for building type-safe backend services. It provides a modular, plugin-based architecture that allows developers to compose server logic, middleware, and validation schemas into scalable application instances. By leveraging native web standards, the framework ensures portability across diverse JavaScript runtimes, including Node.js, Deno, and various edge computing environments. The framework distinguishes itself through its focus on end-to-end type safety, automatically synchronizing request and response definitions between the s
Runs user-defined functions at specific stages of the request-response cycle, such as before handler execution.
brpc is a high-performance C++ RPC framework and network programming library designed for building distributed systems. It functions as a multi-protocol RPC server capable of hosting and detecting multiple communication protocols, including gRPC, Thrift, HTTP, Redis, and Memcached, on a single TCP port. The project distinguishes itself through high-throughput data transport and memory efficiency, utilizing RDMA-based transport to bypass the kernel TCP stack and zero-copy memory management to eliminate data duplication. It also implements the Raft algorithm for consensus-based state replicatio
Sends requests to backup replicas if the primary attempt fails or exceeds the timeout limit.
Superagent is a cross-platform JavaScript HTTP client and Ajax library used for exchanging data between clients and servers. It provides a consistent API for making network requests that works identically across both Node.js and web browser environments. The library features a request pipeline that allows for the addition of custom behaviors to outgoing network calls. This system supports the implementation of specialized functions such as request throttling, caching, and the automatic signing of outgoing data.
Provides a fluent, chainable interface for configuring network request parameters before execution.
This is a header-only C++ library that provides implementations for HTTP clients, HTTP servers, and a WebSocket framework. It allows for the creation of network services and the consumption of remote APIs without requiring a separate compilation step or external binary linking. The project features backend-agnostic TLS integration for secure HTTPS and WSS communication and employs a thread-pool model to process concurrent requests. It distinguishes itself with a full-duplex WebSocket state-machine and a middleware-based request pipeline that supports regular-expression path routing. The libr
Executes pre-request handlers to validate headers or authenticate requests before processing the body.
Moya is a network abstraction layer for Swift that provides a structured framework for defining and executing REST API requests. It functions as a type-safe API client that decouples network endpoint definitions from the underlying implementation details to prevent configuration errors and URL typos. The project distinguishes itself by using protocol-based endpoint definitions and a provider-coordinated execution model. It includes a system for mapping network responses to strongly typed objects and features a dedicated tool for generating type-safe network interface files from external REST
Dispatches network requests to defined endpoints and processes results via completion handlers or streams.
SMSBoom is an API-based message dispatcher and bulk SMS messaging tool. It functions as a utility for managing recipient lists and automating the delivery of text notifications to large groups. The tool operates by making HTTP requests to external third-party messaging service providers and API gateways to trigger cellular network transmissions. It manages mass SMS outreach by processing collections of phone numbers to dispatch high volumes of messages.
Executes each message delivery attempt as a discrete, blocking network call.
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
Supports standard blocking calls for simple scripts where high concurrency is not required.
Speedtest-cli is a command-line utility designed to measure internet upload and download throughput by connecting to remote servers. It functions as a diagnostic tool for evaluating connection quality and verifying network performance against service provider claims. The utility identifies testing endpoints by calculating the physical distance between the client and available servers, ensuring measurements are based on responsive nodes. It manages the testing lifecycle by coordinating with remote services to fetch server lists and register results, which can be exported into machine-readable
Executes network tests by sequentially polling remote servers to determine latency and throughput.
Revel is a full-stack web framework and toolkit for building applications with the Go language. It implements a model-view-controller architecture to separate business logic from user interface rendering, providing a comprehensive system for routing, parameter binding, and session management. The project distinguishes itself with a high-productivity development environment featuring automatic code compilation and hot-reloading, which refreshes the application state and templates upon file changes without requiring manual restarts. It also employs reflection-based parameter binding to automati
Executes custom logic at specific stages of the request-response cycle for authentication and logging.
FlareSolverr is a proxy server designed to provide programmatic access to websites protected by automated security challenges and firewall restrictions. It functions by orchestrating headless browser instances to render web pages, execute JavaScript, and retrieve the necessary cookies and content required to bypass common security hurdles. The service distinguishes itself by maintaining persistent browser sessions in memory, which allows for the reuse of authenticated states across multiple requests. It integrates with external captcha resolution services to handle interactive security challe
Executes GET and POST requests through managed browser instances to retrieve content from protected resources.
Tinyhttpd is a minimal HTTP web server designed to process requests, deliver static files, and execute CGI scripts via network sockets. It serves as an educational implementation for studying the fundamental mechanics of the HTTP protocol and network programming. The server supports the Common Gateway Interface to generate dynamic content by launching external programs as subprocesses. It manages these dynamic requests by redirecting data through pipes and system environment variables. The system provides capabilities for parsing HTTP request methods and URLs, mapping those requests to local
Processes HTTP requests using a synchronous, linear sequence before proceeding to the next operation.
DrissionPage is a Python library designed for web automation, data scraping, and testing. It functions as a browser automation framework that communicates directly with the browser engine via the Chrome DevTools Protocol, allowing for precise control over browser instances and page states. The library distinguishes itself by providing a unified interface that combines full browser automation with raw HTTP request capabilities. This hybrid approach allows users to switch between lightweight network requests and heavy browser-based interactions within a single workflow. By wrapping asynchronous
Wraps asynchronous network requests into a blocking interface for sequential automation.
Pixez-flutter is a cross-platform mobile application designed for browsing, searching, and downloading digital artwork from external platforms. It provides a comprehensive interface for managing remote media collections, including support for viewing illustrations, manga, and animated content. The application handles user authentication and session persistence to ensure a consistent experience across different devices. The project distinguishes itself through a sophisticated network management layer that enables users to bypass regional restrictions and network limitations. By utilizing custo
Executes network requests using modern protocols to handle binary and structured data for remote media access.
This project is an NGINX module that embeds the Lua scripting language directly into the server environment. It functions as a request processor and response filter, enabling the execution of scripts to handle HTTP requests, generate dynamic content, and manage server behavior without external application calls. The module provides a shared memory dictionary and cache manager, allowing data to be stored and retrieved across all active worker processes. This capability supports the collection of high-performance server metrics and the synchronization of information across concurrent processes.
Executes lifecycle-specific request handlers to rewrite URIs and control access during the NGINX request flow.
Instaloader is a Python library and command-line utility designed for the automated retrieval, archiving, and analysis of Instagram content. It provides a programmatic interface to fetch media, captions, and metadata from public or private profiles, hashtags, and stories, while maintaining persistent user sessions for authorized access. The tool distinguishes itself through robust archive management and traffic control mechanisms. It supports incremental synchronization, allowing users to resume interrupted downloads and update local collections without redundant requests. To ensure reliable
Manages network request execution with automatic retries and error handling to ensure reliable data transfer.
urql is a GraphQL client library designed for fetching and managing data from a GraphQL API. It provides a system for handling GraphQL data fetching, state management, and integration with React components. The library is distinguished by a middleware pipeline architecture that allows the request-response flow to be modified through swappable exchanges. This enables the customization of the data layer, including the addition of custom business logic, request deduplication, and specialized fetching behaviors. The project covers a broad range of capabilities, including normalized caching to en
Allows manual triggering and configuration of request parameters and policies during operation execution.
Movie Data Capture is a media library organizer and movie metadata scraper designed to automatically categorize and name files in a local media collection. It functions as an automated content tagger that identifies movie files and applies descriptive tags by extracting film details from web databases. The system utilizes an HTTP web scraper to fetch information from external APIs and remote HTML content. It employs a filename pattern parser to extract movie titles and release years from local files using regular expressions, which are then used to automate search queries. The tool maps scra
Uses synchronous request handlers to collect metadata linearly before updating local records.