PR

curlコマンドを使ってみよう – HTTPリクエストを簡単に送信

tips TIPS

curl使ってますか?
使い慣れないうちは、オプション沢山あるし、出力結果やたらと長文だし、ちょっとハードル高く感じますよね。
でも、ブラウザが使えないとき、詳細な検証をしたいとき、APIのテストやデバッグ、ウェブサイトの情報取得など、様々な用途に活用できる強力なツールです。
この記事では、curlの基本的な使い方と主要なオプションについて解説していきます。

curlの基本的な使い方

まずは基本中の基本。

curl [URL]

これにより、指定したURLからデータを取得し、ターミナルに表示してくれます。
指定したURLによっては、凄まじい勢いでHTMLタグが表示されますね。

% curl https://www.google.com/
<!doctype html><html itemscope="" itemtype="http://schema.org/WebPage" lang="ja">
以下略

よく使うオプション

よく使うオプション
オプション説明
-Oファイルをダウンロードし、元のファイル名で保存
-oダウンロードしたファイルの名前を指定
-Iヘッダー情報のみを取得
-Lリダイレクトを自動的に追跡
-v詳細な情報を表示(デバッグに有用)

リクエストメソッドの指定

-Xオプションを使用して、HTTPリクエストメソッドを指定できます。

curl -X POST https://api.example.com/data

HTTPリクエストメソッドには、GET、POST、PUT、DELETEなどがあります。

データの送信

POSTリクエストでデータを送信する場合は、-dオプションを使用すれば可能です。

curl -X POST -d "name=Ray&age=100" https://api.example.com/users

JSONデータを送信する場合:

curl -X POST -H "Content-Type: application/json" -d '{"name":"Ray","age":100}' https://api.example.com/users

ヘッダーの操作

-Hオプションを使用してカスタムヘッダーが追加できます。

curl -H "Authorization: Bearer token123" https://api.example.com/secure

認証関係で使うことがありますね。

応用例

SSL証明書の検証をスキップする。

curl -k https://example.com

レスポンス結果をファイルに保存する。

curl -o result.html https://example.com

HTTPステータスコードのみ出力する。

curl "http://api.example.com/" -o /dev/null -w '%{http_code}\n' -s

まとめ

curlは本当に便利で、HTTPリクエストの送信や検証に欠かせません。基本的な使い方をマスターすれば、多くの場面で活用できるでしょう。WEB業界にいる方はもちろん、日常の業務でも活躍するシーンはあるはずです。
より高度な使用方法については、man curlコマンドでマニュアルを参照するか、公式ドキュメントを確認してくださいね。

公式サイト:https://curl.se/