curl からコードへの変換

curlコマンドを貼り付けて — Python、Go、Java、PHP、Node.jsのコードを即座に生成

← 変換ツールに戻る
1
curlを貼り付け

ターミナルまたはDevToolsから

2
変換をクリック

5つの言語すべてを生成

3
コピーして使用

言語を選んでコピー&ペースト

curlコマンドを貼り付けて変換をクリックしてください

サポートされているcurlフラグ

フラグ生成対象
-X / --request-X POST全5言語 — HTTPメソッド
-H / --header-H "Authorization: Bearer x"全5言語 — リクエストヘッダー
-d / --data / --data-raw-d '{"key":"val"}'全5言語 — リクエストボディ(JSON/フォーム自動検出)
-u / --user-u admin:pass123全5言語 — HTTP Basic認証
-k / --insecure-k全5言語 — TLS証明書検証をスキップ
-L / --location-L全5言語 — HTTPリダイレクトを追跡
-b / --cookie-b "session=abc123"全5言語 — Cookieを送信
-A / --user-agent-A "MyBot/1.0"全5言語 — カスタムUser-Agent
-F / --form-F "[email protected]"Python、Node.js(マルチパートフォームデータ)
--connect-timeout--connect-timeout 10全5言語 — 接続タイムアウト
--compressed--compressedコメントとして生成 — ライブラリ既定値で処理

開発者がcurlをコードに変換する理由

API探索から本番コードへ。開発者はcurlが高速で普遍的、セットアップ不要なためAPIのテストにcurlを使用します。しかし、そのAPIをアプリケーションに統合する段階になると、curlコマンドをPython、Go、Java、PHP、JavaScriptに変換する必要があります。curlの構文から各言語のHTTPライブラリにヘッダー、JSONボディ、認証トークン、SSLオプションを手動で翻訳するのは面倒でミスが起こりやすく、引用符が1つずれたりヘッダーが欠けたりするだけでリクエストが暗黙のうちに失敗します。

ブラウザDevToolsからコードへ。ChromeとFirefoxのDevToolsでは、任意のネットワークリクエストを右クリックして「cURLとしてコピー」できます。これによりブラウザが送信した正確なヘッダー、Cookie、ボディが取得できますが、それはcurlコマンドであり、使用可能なコードではありません。このツールはそのギャップを埋めます:DevToolsのcurlを貼り付けるだけで、選択した言語で動作するコードが得られます。

よくある質問

curlをPython requestsに変換するにはどうすればよいですか?

curlコマンドを貼り付けてPythonタブに切り替えてください。このツールはクリーンなrequestsライブラリのコードを生成します — URL、メソッド、ヘッダー、JSON/フォームデータ、認証、SSL設定を処理します。ブラウザDevTools(cURLとしてコピー)からのcurlでも動作します。

curlをGoやJavaに変換するにはどうすればよいですか?

Goタブ:net/httphttp.NewRequest、ヘッダー設定、http.Clientを使用。Javaタブ:java.net.http.HttpClient(Java 11以降)でHttpRequestビルダーを使用。どちらも適切なエラーハンドリングとSSL設定を含みます。

Chrome DevToolsからのcurlに対応していますか?

はい。DevToolsの「cURLとしてコピー」は-Hヘッダー、--compressed、Cookieを含むコマンドを生成します — すべて処理されます。認識されないフラグはコメントとして生成されるため、何も暗黙的に失われることはありません。

どのcurlフラグがサポートされていますか?

-X(メソッド)、-H(ヘッダー)、-d(JSON/フォーム検出付きボディ)、-u(Basic認証)、-k(TLSスキップ)、-L(リダイレクト追跡)、-b(Cookie)、-A(User-Agent)、-F(マルチパートフォーム)、--connect-timeout、--max-time。言語ごとの詳細は上記のリファレンス表をご覧ください。

なぜ1つのcurlコマンドから5つの言語を生成するのですか?

チームは多くの場合複数の言語を横断して作業します — Goのバックエンド、Pythonのスクリプト、JavaのAndroidアプリ、Node.jsのフロントエンド。5つすべてを一度に生成することで、curlコマンドを再入力することなく任意のプロジェクトのコードをコピーでき、言語間でのHTTPクライアントパターンを比較できます。