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
# HEAD
HTTP Semantics
# GET
HTTP Semantics
# PUT
HTTP Semantics
# DELETE
HTTP Semantics
# CONNECT
HTTP Semantics
# OPTIONS
HTTP Semantics
# POST

ブラウザーの互換性

関連情報