awesome-repositories.com
Blog
awesome-repositories.com

Descubre los mejores repositorios open-source con nuestra búsqueda potenciada por IA.

ExplorarBúsquedas curadasAlternativas open-sourceSoftware autohospedableBlogMapa del sitio
ProyectoAcerca deCómo clasificamosPrensaServidor MCP
Aviso legalPrivacidadTérminos
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
node-fetch avatar

node-fetch/node-fetch

0
View on GitHub↗
8,857 estrellas·1,052 forks·JavaScript·MIT·2 vistas

Node Fetch

node-fetch is a promise-based HTTP client library that provides a lightweight implementation of the Fetch API for the Node.js runtime. It serves as a network interface for performing asynchronous HTTP requests, handling server communication, and managing headers.

The library utilizes a promise-based request lifecycle to wrap network calls, ensuring asynchronous behavior. It incorporates stream-based handling for both requests and responses to process large payloads efficiently without overloading system memory.

Its capabilities cover a broad range of network communication tasks, including the transmission of multipart form data, response body parsing into JSON or blobs, and the management of custom network agents for DNS and certificate control. It also supports request cancellation via signals and spec-compliant header validation.

Features

  • HTTP Client Libraries - Serves as a comprehensive library for performing asynchronous HTTP requests and managing network headers.
  • HTTP Clients - Executes asynchronous network requests to retrieve response objects using various body types including strings, buffers, and streams.
  • Response Body Parsing - Converts response payloads into text, JSON, blobs, or buffers based on the required data format.
  • API Data Consumption - Enables the retrieval and parsing of JSON, text, and binary data from remote web services.
  • HTTP Payload Streaming - Processes large network payloads using streams to optimize memory usage during data transfer.
  • Network Data Streaming - Handles large payloads using readable streams for both requests and responses to optimize memory efficiency.
  • Promise-Based HTTP Clients - Wraps network calls in promises to provide an asynchronous interface matching the web Fetch API.
  • Request Data Transmission - Transmits data to a server using various methods and body types including JSON and URL-encoded parameters.
  • HTTP Header Manipulators - Provides spec-compliant storage and retrieval of request and response headers with validation of names and values.
  • Incremental Body Processing - Uses readable streams for request and response payloads to process large data volumes without overloading memory.
  • Node.js Clients - Provides a high-performance HTTP client optimized for the Node.js runtime environment.
  • Fetch API Implementations - Brings a lightweight, spec-compliant implementation of the standard Fetch API to the Node.js runtime.
  • Streaming Response Handlers - Implements memory-efficient streaming of large HTTP response payloads to prevent system memory overload.
  • Network Error Diagnosis - Distinguishes between aborted requests and system failures using specific error names and codes to diagnose network issues.
  • Connection Pooling - Delegates low-level socket management and DNS resolution to a configurable network agent for fine-tuned connection control.
  • HTTP Header Validations - Enforces standardized naming and value constraints on HTTP headers to ensure compatibility with web browser expectations.
  • Network Agent Configuration - Customizes DNS lookups and certificate support via network agents to control low-level networking behavior.
  • Request Cancellations - Provides a mechanism for stopping ongoing network requests using signals to prevent unnecessary resource usage.
  • Request Abort Controllers - Integrates with AbortController to listen for signal events and terminate active network requests immediately.
  • Response Body Decoders - Converts response bodies into strings using standard encoding or automatic detection.
  • Form Submission Clients - Supports the transmission of files and form parameters using the multipart/form-data payload format.
  • HTTP Error Handling - Implements mechanisms for identifying client or server errors via HTTP status codes and operational exception catching.
  • Multipart Upload Utilities - Enables posting files and form parameters using the standard multipart/form-data format.
  • Network Transport Customizers - Allows customization of low-level networking behavior, including DNS lookups and SSL certificates, via custom agents.
  • Redirect Resolvers - Tracks and identifies the final destination URL after a request has been redirected by a server.
  • HTTP Clients - Implementation of the Fetch API for Node.js.

Historial de estrellas

Gráfico del historial de estrellas de node-fetch/node-fetchGráfico del historial de estrellas de node-fetch/node-fetch

Búsqueda con IA

Explora más repositorios increíbles

Describe lo que necesitas en lenguaje sencillo: la IA clasifica miles de proyectos open-source curados por relevancia.

Start searching with AI

Alternativas open-source a Node Fetch

Proyectos open-source similares, clasificados según cuántas características comparten con Node Fetch.
  • bitinn/node-fetchAvatar de bitinn

    bitinn/node-fetch

    8,861Ver en GitHub↗

    node-fetch is a lightweight HTTP client library that implements the browser-standard Fetch API for Node.js. It provides a promise-based interface for making asynchronous network requests to retrieve or send data from server-side environments. The project specializes in memory-efficient data handling by utilizing request and response streaming. This allows for the incremental processing of large network payloads through native system streams to prevent memory exhaustion. The library covers a broad range of networking capabilities, including the use of custom HTTP agents for DNS and SSL config

    JavaScript
    Ver en GitHub↗8,861
  • encode/httpxAvatar de encode

    encode/httpx

    15,090Ver en GitHub↗

    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

    Pythonasynciohttppython
    Ver en GitHub↗15,090
  • lostisland/faradayAvatar de lostisland

    lostisland/faraday

    5,946Ver en GitHub↗

    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

    Ruby
    Ver en GitHub↗5,946
  • mzabriskie/axiosAvatar de mzabriskie

    mzabriskie/axios

    109,096Ver en GitHub↗

    Axios is a promise-based HTTP client used to make asynchronous network requests in both browser and Node.js environments. It functions as a multi-environment network adapter that abstracts the transport layer to ensure consistent behavior across different runtimes. The project distinguishes itself through a request lifecycle management system that allows for the cancellation of active requests, the setting of timeouts, and the monitoring of upload and download transfer progress. It includes a mechanism for intercepting network traffic, enabling the transformation of outgoing requests and inco

    JavaScript
    Ver en GitHub↗109,096
Ver las 30 alternativas a Node Fetch→

Preguntas frecuentes

¿Qué hace node-fetch/node-fetch?

node-fetch is a promise-based HTTP client library that provides a lightweight implementation of the Fetch API for the Node.js runtime. It serves as a network interface for performing asynchronous HTTP requests, handling server communication, and managing headers.

¿Cuáles son las características principales de node-fetch/node-fetch?

Las características principales de node-fetch/node-fetch son: HTTP Client Libraries, HTTP Clients, Response Body Parsing, API Data Consumption, HTTP Payload Streaming, Network Data Streaming, Promise-Based HTTP Clients, Request Data Transmission.

¿Qué alternativas de código abierto existen para node-fetch/node-fetch?

Las alternativas de código abierto para node-fetch/node-fetch incluyen: bitinn/node-fetch — node-fetch is a lightweight HTTP client library that implements the browser-standard Fetch API for Node.js. It… encode/httpx — This project is a comprehensive Python network request framework designed for both synchronous and asynchronous HTTP… lostisland/faraday — Faraday is an HTTP client library for Ruby that sends requests and processes responses through a middleware pipeline… mzabriskie/axios — Axios is a promise-based HTTP client used to make asynchronous network requests in both browser and Node.js… sindresorhus/got — Got is a promise-based HTTP request library for Node.js that supports HTTP/2 and streaming. It provides a system for… boostorg/beast — Beast is a C++ library for implementing low-level HTTP and WebSocket clients and servers. It functions as an…