HTMLリクエストをコマンドラインから発行することができる定番ツール「cURL」。Web開発になくてはならないツールとして使い方に習熟している方は多いかもしれません。
本日紹介する「cURL Converter」は、このcURLと同様の動作を行うプログラミング言語のソースコードを自動で生成してくれるWebサービスです。
GETだけではなく、POSTやBasic認証などにも対応していて、変換先のプログラミング言語もPython、Ansible URI、Node.js、R、PHP、Strest、Go、Dart、JSON、Rustなどと多彩です。
以下使用方法を説明します。
cURL Converterの使用方法
公式サイトをWebブラウザで開きます。
画面左側のテキストボックスにcURLコマンドを入力すると、対応するプログラミング言語のソースコードが右側にリアルタイムに表示されます。プログラミング言語の種類は画面中央のリストボックスで指定します。
例えば以下のシンプルなcURLコマンドを入力します。
curl https://softantenna.com/
対応するPythonコードが表示されます。
import requests response = requests.get('https://softantenna.com/')
Go言語の場合は以下の通り少し長いことが分かります。
package main import ( "fmt" "io/ioutil" "log" "net/http" ) func main() { client := &http.Client{} req, err := http.NewRequest("GET", "https://softantenna.com/", nil) if err != nil { log.Fatal(err) } resp, err := client.Do(req) if err != nil { log.Fatal(err) } bodyText, err := ioutil.ReadAll(resp.Body) if err != nil { log.Fatal(err) } fmt.Printf("%s\n", bodyText) }
Examplesを選ぶとGET、POST、Basic Authのサンプルを貼り付けることもできます。
また同サイトにはChromeの便利な機能である「Copy as cURL」を使用する方法も掲載されています。「Cmd + Opt + I」でDevToolsを開き、ネットワークタブの各リクエストをcURL形式でコピーすることができるのです。Chromeと全く同じリクエストを送信したい場合、覚えておくと便利なテクニックです。
まとめ
cURL Converterを利用すれば、cURLのコマンドをPythonをはじめとした各種プログラミング言語のソースコードに変換することができます。GitHubでソースコードも公開されているため、さらなる改良に貢献することも可能です。