cURL to Fetch 変換ツール

あらゆるcURLをfetchに変換。curlコマンドを貼り付けると、ヘッダー・メソッド・ボディを備えたクリーンなJavaScript fetch()呼び出しを取得でき、ブラウザ内でローカル処理します。

あなたのcurlコマンドはブラウザ内でローカルに変換され、アップロードされることはありません。ただし、本番環境の実際のトークンや認証情報をどのツールにも貼り付けないようにしてください。

開発・運営:Udit Agarwal

API URLを調べたいですか? URL Parserをお試しください。

cURL から Fetch について

このcurl to fetch変換ツールは、ターミナル、ブラウザのDevTools、APIドキュメントからコピーしたcurlコマンドを受け取り、すぐに実行できるJavaScript fetch()呼び出しに書き換えます。curl to fetch変換ツールとして、-X、-H、-d、--data-raw、--json、-u、-b、-Gといった一般的なフラグを解析し、適切なHTTPメソッドを推測し、適切なContent-Typeヘッダーを設定し、JSONボディをJSON.stringifyで整形します。curlリクエストをフロントエンドのコード、Nodeスクリプト、または手早いテストへ、構文を手作業で翻訳することなく移すために使えます。API呼び出しを組み立てる開発者、QAエンジニア、その他迅速なcurl to javascript変換を求めるすべての人のために作られています。変換は完全にブラウザ内で実行されるため、貼り付けたコマンドはローカルで処理され、デバイスから外に出ることはありません。

機能

  • メソッド(-X/--request)を解析し、指定がない場合はGETまたはPOSTを自動推測
  • -H/--header フラグを構造化された fetch ヘッダーオブジェクトに変換
  • -d、--data-raw、--data-ascii、--data-binary、--json のリクエストボディに対応
  • 有効なJSONボディをJSON.stringifyで整形し、対応するContent-Typeを付加
  • -u/--user のBasic認証をAuthorizationヘッダーにエンコードし、cookie・user-agent・refererをマッピング
  • -G/--get リクエストをデータをクエリ文字列として付加する形に書き換え
  • -k、-L、ファイル出力オプションなど fetch に相当しないフラグを警告
  • 結果をワンクリックでコピー、または request.js としてダウンロード

cURL から Fetch の使い方

  1. curlコマンドをcURLコマンドボックスに貼り付けます。
  2. 右側の出力パネルで生成されたfetch()相当のコードを確認します。
  3. 無視または調整されたフラグがないか警告バナーをチェックします。
  4. コピーをクリックしてfetchコードを取得するか、request.jsとしてダウンロードします。

例

入力

curl https://api.example.com/users \
  -H "Authorization: Bearer TOKEN" \
  -d '{"name":"Ada"}'

出力

const response = await fetch("https://api.example.com/users", {
  method: "POST",
  headers: {
    "Authorization": "Bearer TOKEN",
    "Content-Type": "application/x-www-form-urlencoded"
  },
  body: "{\"name\":\"Ada\"}",
});

const data = await response.text();

-d ボディはデフォルトでPOST、form-urlencodedのContent-Typeになります。

よくあるエラーとトラブルシューティング

  • 出力に "Command should start with curl" または "No URL found in the curl command" と表示される。 — 貼り付けたテキストがcurlで始まり、完全なURLを含んでいることを確認してください。変換ツールは本物のcurl呼び出しを想定しています。
  • JSONボディがJSON.stringifyではなくform-urlencoded文字列として出力される。 — --jsonで送るか、-H "Content-Type: application/json" を追加してください。そうすると変換ツールは有効なJSONをJSON.stringifyで包むべきだと認識します。
  • -k/--insecure や -L/--location などのフラグが消えたように見える。 — これらにはfetch相当が存在しません。ブラウザは常にTLSを強制し、デフォルトでリダイレクトに従うため、変換ツールはこれらを警告として記し、削除します。
  • --data-urlencode の値が再エンコードされない。 — 変換ツールはこれらをそのまま保持して警告します。エンドポイントが厳密なURLエンコードを必要とする場合は、値をご自身でエンコードしてください。

よくある質問

cURL to Fetch 変換ツールとは何ですか?
-X、-H、-dとその派生、--json、-u、-b、-A、-e、-G、--url を含む一般的なcurlフラグを解析し、適切なメソッド・ヘッダー・ボディを備えた同等のJavaScript fetch()呼び出しを構築する、ブラウザ内ツールです。
curlコマンドをfetchに変換するにはどうすればよいですか?
curlコマンドを入力ボックスに貼り付けると、cURL to Fetch変換ツールが即座に右側にfetch()相当のコードを表示します。コピーまたはrequest.jsとしてダウンロードできます。
cURL to Fetch 変換ツールはHTTPメソッドをどう決めますか?
-X または --request を渡せばそれを使用します。それ以外の場合、データボディがあればPOST、なければGETをデフォルトとします。
-u のBasic認証や -G のクエリデータに対応していますか?
はい。-u または --user の値はAuthorization: Basicヘッダーにbase64エンコードされます。また-Gを使うと、-dのデータはcurlと同様にクエリ文字列としてURLに付加され、リクエストボディは空のままになります。
変換時、私のcurlコマンドはどこかに送信されますか?
いいえ。curl to fetchの変換は完全にブラウザ内で実行されるため、コマンドやその中のトークンはローカルで処理され、デバイスから外に出ることはありません。

関連ツール

API ツールの他のツール

API ツールのツールをすべて見る (24) · すべてのツール