結果は情報提供のみを目的としており、誤りを含む場合があります。重要な情報は必ずご自身で確認してください。本ツールのご利用は自己責任でお願いいたします。
このツールでできること
cURL to Codeコンバーターは、curlコマンドを同じ内容のJavaScript fetch()またはPython requestsのコードに変換します。APIドキュメントやブラウザのネットワークパネル(Copy as cURL)からコピーしたコマンドを貼り付け、言語を選んで変換を押してください。メソッド、URL、ヘッダー、リクエストボディがそのまま引き継がれます。
パーサーが解釈するのは-X/--request、-H/--header、-d/--data/--data-raw/--data-binary、-u/--userです。メソッドを明示せずにボディを指定すると、curlと同じくPOSTリクエストになります。-u user:passはAuthorization: Basicヘッダーに変換されます。バックスラッシュによる行継続は先に連結されるので、複数行のコマンドもそのまま貼り付けられます。--compressedや-sなど、それ以外のフラグは無視されます。
こんなときに使えます
- APIドキュメントのサンプルを、フロントエンドやNodeスクリプト用のコードにしたいとき。
- ブラウザのDevToolsでキャプチャしたリクエストを、Pythonのテストで再現したいとき。
- ターミナルで試したリクエストを、定期実行ジョブやノートブックに移したいとき。
- 長いcurlのワンライナーが実際に何を送っているのか、チームメンバーに説明したいとき。
使用例
入力
curl -X POST https://api.example.com/users -H "Content-Type: application/json" -d '{"name":"Ana"}'
出力
fetch("https://api.example.com/users", {
method: "POST",
headers: {
"Content-Type": "application/json"
},
body: "{\"name\":\"Ana\"}"
})
.then(res => res.json())
.then(data => console.log(data))
.catch(err => console.error(err));このツールについての質問
変換するとリクエストは送信されますか?
いいえ。コマンドを解析してコードに書き換えるだけで、含まれるURLにアクセスすることはありません。ただし、コピーしたコマンドはクリップボードやコードに残るので、本物のトークンは削除しておいてください。
ボディがオブジェクトではなく文字列になるのはなぜですか?
curlは-dの値を書かれたとおりに送信するため、生成されるコードも同じ動作にしています。オブジェクトからボディを組み立てたい場合は、JavaScriptならJSON.stringify({...})、Pythonならjson=に置き換えてください。
-Fによるファイルアップロードはどうなりますか?
マルチパートフォームのフラグ(-F)は変換されません。こうしたリクエストは、JavaScriptではFormData、Pythonではfiles=引数を使って組み立ててください。
Pythonの出力ではどのライブラリを使いますか?
Pythonで最も広く使われているHTTPライブラリのrequestsを使います。pip install requestsでインストールしてください。生成されるスクリプトは、ステータスコードとJSONレスポンスを出力します。
このツールは無料ですか?
はい、無料でご利用いただけます。登録・メールアドレス不要。結果はこのページに表示されます。
結果はどこで確認できますか?
このページでツールを使用すると、結果がここに表示されます。メールで受け取る必要はありません。