cURL 変換ツール

ステップ 1 / 4cURL 変換ツール

cURL コマンドを貼り付ける

上限は 256 KiB、シェルトークン4,096個、ヘッダー200個、本文データ128 KiBです。

POSIX 形式の cURL コマンドを、リクエストを実行することなくブラウザー Fetch、Node.js fetch、Python Requests、PHP cURL のコードに変換します。一般的なメソッド、重複ヘッダー、インラインの本文、URL エンコードされたフィールド、Basic 認証、Cookie、テキストだけの multipart フィールド、リダイレクト、圧縮に対応します。ファイルの読み取り、証明書やプロキシの使用、出力の書き込みを行うオプションはブロックされます。コードを生成する前に解析結果を正確に確認できます。256 KiB までのコマンドはブラウザー内に保持されます。

使い方

  1. 1

    コマンドを貼り付ける

    POSIX 形式の cURL コマンドを1つ入力します。シェルの引用符とエスケープされた行継続はローカルで解析され、実行されません。

  2. 2

    リクエストを確認する

    URL、メソッド、ヘッダー、本文、フォームフィールド、警告、ブロックされたオプションを確認します。

  3. 3

    変換先を選ぶ

    ブラウザー Fetch、Node.js fetch、Python Requests、PHP cURL のコードを生成し、コピーまたはダウンロードします。

変換時に保持される内容

パーサーは、1つの cURL コマンドに対して一般的な POSIX シェルの引用規則を適用します。-X/--request、複数の -H/--header-d/--data/--data-raw--data-urlencode-u/--user-b/--cookie、テキストだけの -F/--form-L--compressed に対応しています。エスケープされた行継続は、トークン化の前に結合されます。cURL 公式マニュアルでは、ヘッダーとフォームのオプションを繰り返し指定できると説明されています。本ツールは順序を保持しつつ、変換先ライブラリが同名の項目をまとめる可能性がある場合に警告します。

cURL の入力 生成される相当コード 重要な制限
-H 'Name: value' 変換先のヘッダーコレクション 同名ヘッダーがまとめられる場合があります
-d 'a=1' テキストのリクエスト本文 複数の値は & で連結されます
--data-urlencode 'q=a b' パーセントエンコードされた本文 ファイルを使う形式はブロックされます
-F 'name=value' テキストの multipart フィールド @file<file はブロックされます
-L リダイレクト追従オプション 安全性は実行環境にも左右されます

ブラウザー Fetch では、Cookie など一部の禁止リクエストヘッダーを設定できません。Cookie 文字列がある場合、ブラウザー向けコードは credentials: "include" を使い、完全に同じ動作ではないことを警告します。MDN は Fetch をネットワークリクエスト用のブラウザー API として説明しています。生成コードは出発点であり、CORS、認証情報、リダイレクト、サーバーポリシーは引き続き適用されます。

安全性の境界

本ツールがコマンドを実行したり、その URL に接続したりすることはありません。ローカルファイルの読み取りやアップロード、クライアント証明書の選択、プロキシの設定、特別な名前解決、転送結果の書き込みを行うオプションはブロックされます。対象には、本文やヘッダーの @file--upload-file、証明書と鍵、プロキシ、出力、設定、トレースの各オプションが含まれます。未対応または不明なオプションは、推測されずにブロックされます。

生成コードには機密情報が残る場合があります。保存または共有する前に、Basic 認証の値、Cookie、Authorization ヘッダーを確認してください。Python の出力は、メソッド、ヘッダー、認証、タイムアウトについて Requests API の規則に従います。PHP の出力では curl_setopt_array を使います。PHP マニュアルでは、各 CURLOPT_* の値が転送ハンドルを設定する仕組みを説明しています。

プライバシーと上限

解析とコード生成は、このブラウザー内の Alpine で行われます。コマンド、解析済みリクエスト、コードが サーバー側のプロパティやファネル URL に入ることはありません。4段階の処理中は、コマンドと選択した変換先をタブ専用の IndexedDB に最長2時間保存し、最初からやり直すと記録を削除します。4,096トークン、200ヘッダー、本文データ128 KiBという上限により、無制限の解析を防ぎます。処理できるのは1つの HTTP または HTTPS URL であり、完全なシェルや cURL の全オプションを再現するものではありません。

よくある質問

いいえ。テキストをローカルでトークン化して変換するだけです。リクエスト送信、ホストの名前解決、プロキシへの接続、参照ファイルの読み取りは行いません。

ファイル、証明書、プロキシ、独自の名前解決、出力、トレースのオプションは、テキストだけを扱う安全な境界を越える可能性があります。同等でないコードを同等と見せないため、これらをブロックします。

ブラウザー JavaScript は Cookie ヘッダーを直接設定できません。ブラウザー向けコードは credentials: include を使い、許可された same-site または CORS リクエストに対してブラウザーが保持する Cookie を送ります。

いいえ。コマンドはブラウザーのメモリと、ファネル利用中の一時的な IndexedDB に留まります。ただし生成コードには同じ機密情報が含まれるため、共有やコミットの前に削除してください。

関連ツール

このツールは他の言語でも利用できます