データを送る —— POST リクエスト
GET は取得。 POST は作成。サーバーへのデータ送信を学ぼう。
⏱ 想定 ~5 分
01 · 読む
これまで使ってきたのは GET だけ —— サーバーからデータを取得するためのものです。でもデータを送る必要もあります: ユーザー作成、フォーム送信、コメント投稿など。
そこで使うのが POST です。
curl では: - -X POST でメソッドを POST に設定 - -H "Content-Type: application/json" で送るフォーマットをサーバーに伝える - -d '{...}' がリクエスト本文 —— 送りたいデータ
ポイントまとめ
- GET = 読み取り。 POST = 作成。
- -X POST で HTTP メソッドを切り替えます
- -d '{...}' で JSON 本文を送ります
- JSON を送るときは必ず Content-Type: application/json を付けます
02 · コード例
curl での POST リクエストの構造を見てみましょう。
JSON 本文を持つ POST
curl -X POST https://api.example.com/todos \
-H "Content-Type: application/json" \
-d '{"text": "Learn curl", "done": false}'
1 行ずつ確認: -X POST —— GET ではなく POST メソッドを使う -H "Content-Type: application/json" —— 本文が JSON だとサーバーに伝える -d '...' —— 本文データ (シングルクォートで囲み、中のダブルクォートをシェルにエスケープさせない)
03 · ターミナル演習
まず現在の todo 一覧を GET で取得して中身を確認します。
(このセクションはインタラクティブです — JavaScript を有効にしてください。)
04 · ターミナル演習
新しい todo をサーバーに POST します。 JSON 本文として送ります。
(このセクションはインタラクティブです — JavaScript を有効にしてください。)
05 · 空欄補充
curl で HTTP メソッドを指定するには _____ フラグを使います。
06 · クイズ
EC API に新しい商品を追加したい。 API ドキュメントには POST /api/products と書かれています。正しい curl コマンドはどれですか?
- curl https://shop.com/api/products?name=Shoes&price=50
- curl -X POST https://shop.com/api/products -H "Content-Type: application/json" -d '{"name":"Shoes","price":50}'
- curl -GET https://shop.com/api/products -d '{"name":"Shoes"}'
- curl --create https://shop.com/api/products -body '{"name":"Shoes"}'
⚠ 全機能のインタラクティブ体験には JavaScript が必要です。JavaScript を有効にして再読み込みしてください。
※ このサイトは独立した教育プロジェクトで、Anthropic の公式製品ではありません。Claude™ は Anthropic, PBC の商標です。