Feign 是一个声明式的 Java HTTP 客户端,可自动生成 Web 服务客户端。它允许开发人员使用接口和注解定义 REST API 端点,无需编写手动请求和响应的样板代码。
netflix/feign 的主要功能包括:Declarative API Clients, Pluggable Transformation Pipelines, API Request Automation, API Client Generators, Microservices Communications, HTTP Client Libraries, HTTP Client Wrappers, Client Services。
netflix/feign 的开源替代品包括: openfeign/feign — Feign is a declarative Java HTTP client framework that maps method signatures to REST API requests. It functions as an… imroc/req — req is a chainable HTTP client library for Go designed to simplify request configuration and automatic response… go-resty/resty — Resty is a high-level HTTP client library for Go designed for consuming REST services. It provides a streamlined… shazow/urllib3 — urllib3 is a Python HTTP client library used to send network requests and receive responses. It provides core… kittinunf/fuel — Fuel is a Kotlin HTTP client library for Android and Kotlin applications that handles both synchronous and… libcpr/cpr — C++ is a high-level HTTP client library and wrapper for libcurl. It provides a C++ interface for making network…
Feign is a declarative Java HTTP client framework that maps method signatures to REST API requests. It functions as an HTTP interface mapper, allowing the creation of type-safe clients by defining service interfaces with annotations to eliminate manual request logic. The framework features a pluggable HTTP transport layer, which decouples request definition from execution by routing network traffic through interchangeable underlying HTTP engines. It provides a comprehensive request management pipeline including interceptors for modifying headers, policy-driven retry logic for failure recover
req is a chainable HTTP client library for Go designed to simplify request configuration and automatic response decoding into structures. It provides a fluent-interface request builder that allows developers to incrementally define request properties and encapsulate HTTP logic into reusable API SDKs. The project distinguishes itself with a TLS fingerprint emulator that mimics browser network signatures to bypass bot detection and crawler filters. It also includes a concurrent file downloader that increases transfer speeds by fetching large remote files in parallel segments. The library cover
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
urllib3 is a Python HTTP client library used to send network requests and receive responses. It provides core components for managing HTTP connection pools, routing traffic through proxies, validating TLS certificates, and executing automatic request retries. The library focuses on network reliability and efficiency by maintaining a system that reuses established connections to multiple hosts to reduce latency. It ensures secure communication through client-side certificate verification and handles transient network errors using policy-based retry logic. The project covers broad networking c