新しいメソッド
HTTP QUERY
QUERY は安全かつ冪等で、リクエストボディを運べるメソッドです。いわば「ボディを持つ GET」。複雑な検索条件を肥大化した URL ではなくボディに置けるうえ、検索に意味が合わない POST を流用せずに済みます。
HTTP を学び、試し、検証する — 新しい QUERY も
/api/echo
→ request
QUERY /productsNEWAccept: application/jsonContent-Type: application/json { "category": "boots", "inStock": true}← response
200 OKContent-Location: /products?…Cache-Control: max-age=60 { "results": 42, "cacheable": true}同じ検索を 4 通りで
同一の商品検索を 4 つの方法で:
横にスワイプして全メソッドを比較。QUERY を先頭に表示しています。
| 特性 | QUERY | GET · URL | GET · body | POST |
|---|---|---|---|---|
| リクエストボディ | JSON | なし | 意味未定義 · 非推奨 | JSON |
| 安全(副作用なし) | ✓ | ✓ | ✓ | ✗ |
| 冪等 | ✓ | ✓ | ✓ | ✗ |
| レスポンスをキャッシュ可能 | ✓Content-Location 経由 | ✓ | ~不確実 · 未定義 | ~既定は不可 · 明示が必要 |
| 絞り込み条件が URL に入らない | ✓ | ✗ | ✓ | ✓ |
| URL 長の制限を受けない | ✓ | ✗約 2KB の上限 | ✓ | ✓ |
| 標準化済み・広く対応 | ~新しい RFC · 採用は初期 | ✓ | ✓ | ✓ |
さらに見る
メソッド
GET / POST / PUT / PATCH / DELETE / HEAD / OPTIONS と新しい QUERY メソッドの意味論・安全性・冪等性・キャッシュ可否。
プレイグラウンド
メソッドを選びボディを添えて、同一オリジンの echo エンドポイントへ実際のリクエストを送信。QUERY などがどう受信されるかをそのまま確認できます。
ステータスコード
1xx〜5xx に分類した主要なステータスコードを、実際の HTTP メッセージ例とともに閲覧できます。
ヘッダー
認証・キャッシュ・コンテントネゴシエーション・CORS・セキュリティなど機能別に整理したリクエスト / レスポンスヘッダー。構文と実例付き。