Curl→コード変換ツール
curlコマンドを貼り付けるだけで、Python、JavaScript、PHP、Go、Rubyなどの同等コードを即座に生成します。
このツールについて
Curl→コード変換ツールは、curlコマンドを6つの主要プログラミング言語(Python (requests)、JavaScript (fetch)、JavaScript (axios)、PHP (cURL拡張)、Go (net/http)、Ruby (Net::HTTP))の本番環境で使えるコードに変換する、無料のブラウザベースのツールです。開発者はAPIドキュメント、Stack Overflowの回答、DevToolsのネットワークエクスポートなどでcurlコマンドに頻繁に遭遇しますが、それをアプリケーションコードに手動で翻訳するのは手間がかかりミスも起こりやすいものです。
本ツールは、よく使われるcurlフラグを幅広く処理します。-X(HTTPメソッド)、-H(ヘッダー)、-d / --data / --data-raw(リクエストボディ)、--data-urlencode(URLエンコードされたボディパラメータ)、-u(Basic認証)、-b(Cookie)、-L(リダイレクト追跡)、-k(TLS証明書検証のスキップ)に対応しています。バックスラッシュによる複数行のcurlコマンドも完全にサポートしています。
すべての処理はブラウザ内で完結します。サーバーへのデータ送信は一切行われないため、APIキー、認証トークン、その他の機密情報を含むcurlコマンドの変換にも安全にご利用いただけます。パーサーはTypeScriptでゼロから実装されており、外部依存ライブラリはなく、高速かつ軽量です。
一般的な使用例としては、APIドキュメントの例を好みの言語に変換する、シェルスクリプトからアプリケーションコードへ移行する、解析済みコンポーネント(メソッド、URL、ヘッダー、ボディ)を確認してHTTPリクエストをデバッグする、そして各言語がHTTPクライアントの呼び出しをどのように構造化するかを学ぶことなどがあります。パースされたリクエスト詳細パネルでは、ツールがcurlコマンドをどのように解釈したかが正確に表示されるため、生成コードをコピーする前に正確性を確認できます。
使い方
- 左側のCurlコマンド入力パネルにcurlコマンドを貼り付けます。バックスラッシュによる複数行コマンドにも対応しています。
- パネル上部のタブでターゲット言語を選択します:Python、JS Fetch、JS Axios、PHP、Go、Ruby。
- 生成されたコードが右側のパネルに即座に表示されます。パネル下部のパースされたリクエスト詳細セクションで、メソッド、URL、ヘッダー、ボディが正しく抽出されたか確認してください。
- コピーをクリックするか、キーボードショートカット Ctrl+Shift+C で生成コードをクリップボードにコピーします。
- サンプルをクリックすると、JSON本文と認証ヘッダー付きのPOSTを使用するcurlコマンドの例が読み込まれます。
- クリアをクリックして両方のパネルをリセットします。
このツールについて
よくある質問
データは安全ですか?
はい。すべての解析とコード生成はクライアントサイドのJavaScriptを使用してブラウザ内で完全に実行されます。データがサーバーに送信されることは一切ありません。APIキー、トークン、パスワード、その他の機密情報を含むcurlコマンドにも安全にご利用いただけます。
どのcurlフラグに対応していますか?
パーサーは -X(メソッド)、-H(ヘッダー)、-d / --data / --data-raw(ボディ)、--data-urlencode(URLエンコードパラメータ)、-u(Basic認証)、-b(Cookie)、-L(リダイレクト追跡)、-k(セキュリティなし / TLSスキップ)をサポートしています。-s(サイレント)や -v(詳細表示)などの一般的なフラグは認識されますが、リクエスト自体には影響しないため無視されます。
対応している言語は何ですか?
本ツールは6つのターゲット向けにコードを生成します:Python(requestsライブラリ使用)、JavaScript(ネイティブfetch API)、JavaScript(axios使用)、PHP(cURL拡張使用)、Go(net/http使用)、Ruby(Net::HTTP使用)。
複数行のcurlコマンドを貼り付けられますか?
はい。パーサーはバックスラッシュ改行による行継続を処理します。これはターミナルで長いcurlコマンドを複数行に分割する標準的な方法です。コマンドをそのまま貼り付けるだけで正しく解析されます。
認証はどのように処理されますか?
-u user:password フラグが検出されると、生成コードは各言語固有の認証メカニズムを使用します。例えば、Pythonではauth=パラメータ、Goではreq.SetBasicAuth()、axiosではauth設定オプションを使用します。生のパスワードが出力に含まれるため、生成コードは元のcurlコマンドと同様に慎重に取り扱ってください。
curlコマンドが認識されない場合はどうなりますか?
パーサーがコマンド内で有効なURLを見つけられない場合、エラーメッセージが表示されます。入力がcurlで始まり(curlキーワード自体は省略可能)、有効なURLが含まれていることを確認してください。サポートされていない、または認識されないフラグは無視されるため、コマンドの残りの部分は正常に解析されます。
外部ライブラリを使用していますか?
いいえ。curlパーサーとすべてのコードジェネレーターはTypeScriptでゼロから実装されています。解析に外部パッケージは使用していないため、高速・軽量で、サプライチェーンに関する懸念もありません。
関連ツール
JSONフォーマッター
JSONの整形、検証、ツリー表示をシンタックスハイライト付きで行えます。
URLエンコード/デコード
URLのエンコード・デコード、クエリパラメータの解析、クエリ文字列の構築を行います。
文字列エスケープ/アンエスケープ
JSON、JavaScript、HTML、URL、SQL、CSV形式の文字列をエスケープ・アンエスケープします。
HTTPステータスコード
すべてのHTTPステータスコードを詳細な説明付きで検索・閲覧できます。
Content-Typeヘッダービルダー
正しいMIMEタイプ、charset、boundaryパラメータでContent-Typeヘッダーを構築します。ヘッダーまたはcurlフラグとしてコピー。
HTTPメソッドリファレンス
GET、POST、PUT、PATCH、DELETE、HEAD、OPTIONSなどの詳細仕様を網羅したインタラクティブなHTTPメソッドリファレンス。
レートリミット計算ツール
APIレートリミットの単位を変換します。秒・分・時間・日あたりのリクエスト数とバースト容量を計算。
OAuth 2.0フロービジュアライザー
OAuth 2.0認可フローをステップごとの図で可視化します。Authorization Code、PKCE、Client Credentialsなどに対応。
AWS CLIコマンドビルダー
AWS CLIコマンドをビジュアルに構築します。サービスと操作を選択し、パラメータを入力して、すぐに使えるawsコマンドを生成。
APIドキュメントジェネレーター
OpenAPI 3.0 / Swagger YAMLドキュメントをビジュアルに生成します。エンドポイント、パラメータ、スキーマ、レスポンスを構築。