Skip to content

openFetch — 日本語 (ja)

@hamdymohamedak/openfetch は、標準の fetch を備えた JavaScript ランタイム向けの、依存ゼロの小さな HTTP クライアントです。デフォルト付きインスタンス、リクエスト/レスポンス インターセプター、合成可能な ミドルウェア、指数バックオフ付き リトライ、GET/HEAD 向け インメモリキャッシュ、構造化 エラー、信頼できない URL 用の任意 URL ガード を提供し、React や window、レガシー XHR には依存しません。

設計目標

  • トランスポートは fetch のみ(Node 18+、Bun、Deno、Workers、ブラウザ)。
  • 対象環境では 必須 polyfill なし
  • サーバー向け: SSR や React Server Components に適する。

ドキュメント

  1. はじめに
  2. 設定
  3. インターセプターとミドルウェア
  4. リトライとキャッシュ
  5. エラーとセキュリティ

公開 API(要約)

エクスポート役割
defaultcreateClient() 済みインスタンス
createClient / create新しいクライアント
OpenFetchError, isOpenFetchError型付きエラー
InterceptorManagerインターセプタースタック
createRetryMiddlewareリトライ用ミドルウェア
MemoryCacheStore, createCacheMiddleware, appendCacheKeyVaryHeadersメモリキャッシュ
OpenFetchConfig, OpenFetchResponse など
assertSafeHttpUrl任意の SSRF 対策(リテラル IP / localhost)

要件

Node.js 18 以上、または fetchAbortController があるランタイム。

MIT · @hamdymohamedak/openfetch