Skip to content

openFetch — Español (es)

@hamdymohamedak/openfetch es un cliente HTTP pequeño y sin dependencias para cualquier runtime de JavaScript que exponga fetch. Añade instancias con valores por defecto, interceptores de petición/respuesta, middleware componible, reintentos opcionales con retroceso exponencial, caché en memoria para GET/HEAD, errores estructurados y una protección de URL opcional para URLs no confiables — sin acoplar a React, window ni XHR heredado.

Objetivos de diseño

  • Un solo transporte: solo fetch (Node 18+, Bun, Deno, Workers, navegadores).
  • Sin polyfills obligatorios en entornos soportados.
  • Seguro en servidor: adecuado para SSR y React Server Components.

Páginas

  1. Primeros pasos — instalación, exportación por defecto, createClient, primeras peticiones
  2. Configuración — opciones de petición, forma de la respuesta, unwrapResponse
  3. Interceptores y middleware — orden de ejecución, use(), middleware propio
  4. Reintentos y cachécreateRetryMiddleware, createCacheMiddleware, TTL / SWR
  5. Errores y seguridadOpenFetchError, códigos, registro seguro, assertSafeHttpUrl

API pública (resumen)

ExportaciónFunción
defaultInstancia ya creada con createClient()
createClient / createNuevo cliente con initialDefaults opcionales
OpenFetchError, isOpenFetchErrorErrores tipados y comprobación de tipo
InterceptorManagerPila de interceptores (normalmente vía client.interceptors)
createRetryMiddlewareFábrica de middleware de reintentos
MemoryCacheStore, createCacheMiddleware, appendCacheKeyVaryHeadersCaché en memoria
TiposOpenFetchConfig, OpenFetchResponse, Middleware, OpenFetchClient, etc.
assertSafeHttpUrlProtección opcional SSRF para IPs literales / localhost

Requisitos

Node.js 18+ o cualquier runtime con fetch y AbortController.

MIT · @hamdymohamedak/openfetch