curlのGETリクエスト

curlでHTTP GETリクエストを送信する方法を解説。クエリパラメータ、レスポンスヘッダー、出力オプションを活用して、あらゆるAPIエンドポイントからデータを取得しましょう。

General

詳細な説明

curlのGETリクエスト基礎

GETリクエストは最も基本的なHTTPメソッドで、サーバーからデータを取得するために使用されます。curlでは、他のメソッドを指定しない場合、デフォルトでGETリクエストが送信されます。

基本構文

curl https://api.example.com/users

このコマンドはシンプルなGETリクエストを送信し、レスポンスボディを標準出力に表示します。curlは内部で User-Agent ヘッダーの設定、DNS解決、TCP接続、TLSネゴシエーションを自動的に処理します。

クエリパラメータの追加

クエリパラメータはURLに直接追加するか、-G フラグと --data-urlencode を組み合わせて指定できます:

curl -G https://api.example.com/search \
  --data-urlencode "q=hello world" \
  --data-urlencode "page=1"

-G フラグを指定すると、データがリクエストボディではなくURLクエリパラメータとして送信されます。

レスポンスヘッダーの確認

-i でレスポンスヘッダーを出力に含め、-I でヘッダーのみを取得します(HEADリクエスト):

curl -i https://api.example.com/users

レスポンスの保存

-o で出力をファイルにリダイレクトするか、-O でリモートファイル名のまま保存します:

curl -o response.json https://api.example.com/users

GETリクエストでよく使うオプション

  • -s(サイレント): プログレスバーを非表示にする
  • -S(エラー表示): サイレントモードでもエラーを表示する
  • -f(失敗): HTTPエラー時にエラーコードを返す
  • -L(リダイレクト追跡): 3xxリダイレクトを自動的にたどる

これらを組み合わせた堅牢なGETリクエストのパターン:

curl -sSfL https://api.example.com/users

curlのGETリクエストを理解することは不可欠です。これがPython、JavaScript、Goなど他の言語への変換の基礎となるからです。

ユースケース

開発者がアプリケーションコードを書く前に、REST APIエンドポイントをテストし、サーバーが期待通りのJSONレスポンスを返すことを素早く確認する必要がある場合に使用します。

Try It — Curl to Code Converter

フルツールを開く