HTTP リクエストメソッド

HTTP では、一連のリクエストメソッドを定義しています。これは、リクエストの目的と、リクエストが成功した場合に期待される結果を示しています。 リクエストメソッドは HTTP 述語と呼ばれることがありますが、名詞であることもあります。 それぞれのリクエストメソッドには独自の意味がありますが、複数のメソッドに共通する特徴もあります。具体的には、リクエストメソッドは安全べき等キャッシュ可能である場合があります。

GET

GET メソッドは、指定したリソースの表現をリクエストします。 GET を使用するリクエストは、データの取得のみを行うべきであり、リクエストのコンテンツを入れてはいけません。

HEAD メソッドは GET リクエストと同じレスポンスを、レスポンス本文なしで求めます。

POST

POST は指定したリソースに実体を送信するために使用するメソッドであり、サーバー上の状態を変更したり、副作用が発生したりすることがよくあります。

PUT

PUT メソッドは対象リソースの現在の表現全体を、リクエストのコンテンツで置き換えます。

DELETE

DELETE メソッドは、指定したリソースを削除します。

CONNECT

CONNECT メソッドは、対象リソースで識別されるサーバーとの間にトンネルを確立します。

OPTIONS

OPTIONS メソッドは、対象リソースの通信オプションを示すために使用します。

TRACE

TRACE メソッドは、対象リソースへのパスに沿ってメッセージのループバックテストを実行します。

PATCH

PATCH メソッドは、リソースを部分的に変更するために使用します。

リクエストの安全性、べき等性、キャッシュ可否

以下の表では、 HTTP リクエストのメソッドと、それぞれの安全性、キャッシュ可否、べき等静による分類を示します。

メソッド 安全性 べき等性 キャッシュ
GET あり あり
HEAD あり あり
OPTIONS あり あり 不可
TRACE あり あり 不可
PUT なし あり 不可
DELETE なし あり 不可
POST なし なし 条件付き*
PATCH なし なし 条件付き*
CONNECT なし なし 不可

* POSTPATCH は、レスポンスに鮮度情報と、一致する Content-Location ヘッダーが明示的に含まれている場合、キャッシュ可能です。

仕様書

Specification
HTTP Semantics
# CONNECT
HTTP Semantics
# POST
HTTP Semantics
# DELETE
HTTP Semantics
# PUT
HTTP Semantics
# OPTIONS
HTTP Semantics
# HEAD
HTTP Semantics
# GET

ブラウザーの互換性

BCD tables only load in the browser

関連情報