awesome-repositories.com
博客
MCP
awesome-repositories.com

通过 AI 驱动的搜索,发现最优秀的开源仓库。

探索精选搜索开源替代品自托管软件博客网站地图
项目关于排名机制媒体报道MCP 服务器
法律隐私政策服务条款
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
tmenier avatar

tmenier/Flurl

0
View on GitHub↗
4,403 星标·397 分支·C#·MIT·6 次浏览flurl.dev↗

Flurl

Flurl 是一个 .NET 流式 URL 构建器和 HTTP 客户端包装器,专为构建复杂的 Web 地址并使用链式接口发送请求而设计。它作为一个 URL 操作库和 HTTP 模拟框架,旨在促进网络交互和测试。

该项目通过流式接口脱颖而出,允许增量构建路径、查询参数和片段。它提供了一个专门的模拟系统来拦截输出的网络流量并返回预定义的响应,从而在无需实时服务器的情况下实现隔离的单元测试。

其更广泛的能力包括 REST API 消费、通过基本凭据或 Bearer 令牌管理请求身份验证,以及通过会话 Cookie 和 HTML 表单提交模拟浏览器行为。该库还涵盖了 URL 解析、验证和组件编码,以及异步请求执行和 JSON 响应反序列化。

Features

  • Fluent Interfaces - Implements a fluent interface pattern that allows for the intuitive, chainable construction of URLs and HTTP requests.
  • URL Construction - Provides a fluent, chainable interface for the incremental construction of complex URLs, paths, and query parameters.
  • HTTP Client Wrappers - Acts as a high-level wrapper around the .NET HTTP client to simplify request sending and response deserialization.
  • HTTP Request Execution - Enables the execution of asynchronous HTTP requests using standard and custom verbs with JSON deserialization.
  • .NET HTTP API Integrations - Provides a streamlined, fluent API for .NET applications to execute asynchronous web requests and handle JSON responses.
  • Asynchronous Request Execution - Performs non-blocking network requests using asynchronous patterns, supporting custom verbs and JSON payloads.
  • Fluent Request Builders - Provides a stateful request builder that accumulates configuration through method chaining before executing the request.
  • Network and API Mocking - Intercepts outgoing HTTP requests and provides canned responses to enable isolated unit testing.
  • Network Traffic Interception - Includes a dedicated mocking framework that intercepts outgoing network traffic to return predefined responses for isolated testing.
  • HTTP Mocking - Simulates HTTP server responses by intercepting outgoing traffic to isolate application logic during testing.
  • URL Manipulation Toolsets - Provides a complete toolset for parsing, validating, and merging URL segments with guaranteed correct encoding.
  • Fluent URL Builders - Offers a chainable API for constructing complex URLs with paths, query parameters, and fragments.
  • REST API Clients - Simplifies the consumption of REST APIs by managing authentication tokens, custom headers, and JSON serialization.
  • HTTP Client Configurations - Provides configuration options for the low-level HTTP pipeline, including the use of delegating handlers.
  • HTTP Request Configurations - Allows configuration of request metadata including custom headers, timeouts, and cancellation tokens.
  • Request Object Extensions - Allows developers to add custom chainable methods to request objects to standardize API call configurations.
  • Client Instance Pooling - Implements a client pooling mechanism to reuse HTTP connections and prevent socket exhaustion.
  • Extension Methods - Extensively uses .NET extension methods to add fluent functionality to existing URL and request types.
  • Custom JSON Serializers - Allows the replacement of default JSON conversion logic with custom serializers for flexible data handling.
  • Request Authentications - Supports the attachment of Basic authentication credentials and OAuth bearer tokens to outgoing requests.
  • Handler Middlewares - Provides a pipeline of handler middlewares to implement cross-cutting concerns like logging for HTTP requests.
  • HTTP Lifecycle Hooks - Executes custom logic via lifecycle hooks at various stages of the HTTP request and response process.
  • Fluent URL Extensions - Enables the addition of custom chainable methods to address types for specialized network URI construction.
  • HTTP Error Handling - Provides structured error handling that throws exceptions for 4xx and 5xx status codes.
  • Segment Combination - Ships a utility to merge multiple URL segments while ensuring correct separator character placement.
  • URL Data Parsing - Decomposes raw URL strings into structured components such as scheme, authority, path, and query.
  • URL Encoding Libraries - Handles the encoding of illegal characters in URL paths and query strings to ensure web compatibility.
  • API Development - Fluent URL builder and testable HTTP client.

Star 历史

tmenier/flurl 的 Star 历史图表tmenier/flurl 的 Star 历史图表

AI 搜索

探索更多 awesome 仓库

用简单的语言描述您的需求 —— AI 将根据相关性为您从数千个精选开源项目中进行排序。

Start searching with AI

Flurl 的开源替代方案

相似的开源项目,按与 Flurl 的功能重合度排序。
  • jnunemaker/httpartyjnunemaker 的头像

    jnunemaker/httparty

    5,894在 GitHub 上查看↗

    HTTParty is a Ruby HTTP client library designed for building standardized API clients. It abstracts low-level network primitives into a high-level interface, allowing developers to encapsulate base URIs and request configurations within classes to maintain consistent interactions with remote web services. The library automates the transformation of raw network response data into native Ruby structures by using a registry-based system that parses content based on response headers. It also provides specialized mechanisms for sending multipart form data and streaming large payloads to maintain m

    Ruby
    在 GitHub 上查看↗5,894
  • axios/axiosaxios 的头像

    axios/axios

    109,077在 GitHub 上查看↗

    Axios is an isomorphic, promise-based HTTP client designed for making asynchronous network requests across different JavaScript execution environments, including the browser and Node.js. It functions as a JSON API client that serializes JavaScript objects into JSON and parses server responses into structured data. The project features a system for managing reusable client instances with shared configurations, such as base URLs and default settings. It includes a mechanism for intercepting outgoing requests and incoming responses globally, allowing data to be transformed before it reaches the

    JavaScripthacktoberfesthttp-clientjavascript
    在 GitHub 上查看↗109,077
  • elbywan/wretchelbywan 的头像

    elbywan/wretch

    5,174在 GitHub 上查看↗

    Wretch is a chainable HTTP client library and Fetch API wrapper designed to simplify network request configuration, response parsing, and error handling. It functions as a network request manager and middleware framework for managing the end-to-end lifecycle of HTTP calls. The project is distinguished by a fluent interface for request configuration and a modular extension system. It utilizes a programmable response resolver to automate parsing and a plugin-based architecture to add new capabilities to request and response objects. The library covers a broad range of operational capabilities,

    TypeScript
    在 GitHub 上查看↗5,174
  • yanzhenjie/nohttpyanzhenjie 的头像

    yanzhenjie/NoHttp

    3,728在 GitHub 上查看↗

    NoHttp is an Android HTTP client framework that provides a simplified interface for executing synchronous and asynchronous network calls. It functions as a request wrapper with integrated support for response parsing, a network cache manager for storing data locally, and a file download manager for retrieving remote content. The framework features strategy-based backend switching, allowing it to swap between OkHttp and URLConnection implementations at runtime. It includes a byte-range resume mechanism for continuing interrupted file transfers and a multi-tier cache layer that supports encrypt

    Javahttpurlconnectionnohttpokhttp
    在 GitHub 上查看↗3,728
查看 Flurl 的所有 30 个替代方案→

常见问题解答

tmenier/flurl 是做什么的?

Flurl 是一个 .NET 流式 URL 构建器和 HTTP 客户端包装器,专为构建复杂的 Web 地址并使用链式接口发送请求而设计。它作为一个 URL 操作库和 HTTP 模拟框架,旨在促进网络交互和测试。

tmenier/flurl 的主要功能有哪些?

tmenier/flurl 的主要功能包括:Fluent Interfaces, URL Construction, HTTP Client Wrappers, HTTP Request Execution, .NET HTTP API Integrations, Asynchronous Request Execution, Fluent Request Builders, Network and API Mocking。

tmenier/flurl 有哪些开源替代品?

tmenier/flurl 的开源替代品包括: jnunemaker/httparty — HTTParty is a Ruby HTTP client library designed for building standardized API clients. It abstracts low-level network… axios/axios — Axios is an isomorphic, promise-based HTTP client designed for making asynchronous network requests across different… elbywan/wretch — Wretch is a chainable HTTP client library and Fetch API wrapper designed to simplify network request configuration,… yanzhenjie/nohttp — NoHttp is an Android HTTP client framework that provides a simplified interface for executing synchronous and… rest-client/rest-client — This is a Ruby HTTP client designed for REST API integration, resource modeling, and automated network communication.… duke-git/lancet — Lancet is a comprehensive extension of the Go standard library, providing a collection of reusable functions and data…