Security-testing-http-methods
セキュリティテスト-HTTPメソッド
HTTPメソッド
HTTP/1.1の共通メソッドのセットを以下に定義し、このセットは要件に基づいて拡張できます。 これらのメソッド名は大文字と小文字が区別され、大文字で使用する必要があります。
S.No. | Method and Description |
---|---|
1 |
GET これは、特定のURIを使用して特定のサーバーから情報を取得するために使用されます。 GETを使用するリクエストは、データを取得するだけで、データに他の影響を与えません。 |
2 |
HEAD GETと同じですが、ステータス行とヘッダーセクションのみを転送します。 |
3 |
POST サーバーにデータを送信するために使用されます。 たとえば、顧客情報、ファイルのアップロードなど。 HTMLフォームを使用します。 |
4 |
PUT ターゲットリソースの現在のすべての表現を、アップロードされたコンテンツに置き換えます。 |
5 |
DELETE URIで指定されたターゲットリソースの現在の表現をすべて削除します。 |
6 |
CONNECT 指定されたURIで識別されるサーバーへのトンネルを確立します。 |
7 |
OPTIONS ターゲットリソースの通信オプションについて説明します。 |
8 |
TRACE ターゲットリソースへのパスに沿ってメッセージループバックテストを実行します。 |
GETメソッド
要求のURL部分にパラメーターを指定することにより、Webサーバーからデータを取得します。 これは、ドキュメントの取得に使用される主な方法です。 次の例では、GETメソッドを使用して hello をフェッチしています-
上記のGETリクエストに対して次のサーバー応答が発行されます-
HEADメソッド
機能的にはGETと似ていますが、サーバーは応答行とヘッダーで応答しますが、エンティティ本体はありません。 次の例では、HEADメソッドを使用して hello に関するヘッダー情報を取得します-
上記のGETリクエストに対して次のサーバー応答が発行されます-
サーバーはヘッダーの後にデータを送信しないことに注意してください。
POSTメソッド
サーバーにデータを送信するときに使用します。 たとえば、ファイルの更新、フォームデータなど。 次の簡単な例では、POSTメソッドを使用して、 process.cgi によって処理され、最終的に応答が返されるフォームデータをサーバーに送信します-
サーバー側のスクリプト process.cgi は、渡されたデータを処理し、次の応答を送信します-
PUTメソッド
PUTメソッドは、指定されたURLで指定された場所に含まれるエンティティ本体を格納するようサーバーに要求するために使用されます。 次の例では、サーバーに、サーバーのルートにある hello に特定のentity-boyを保存するように要求します-
サーバーは指定されたエンティティ本体を hello ファイルに保存し、次の応答をクライアントに送信します-
DELETEメソッド
DELETEメソッドは、指定されたURLで指定された場所にあるファイルを削除するようサーバーに要求するために使用されます。 次の例では、サーバーのルートにある特定のファイル hello を削除するようサーバーに要求します-
サーバーは上記のファイル hello を削除し、次の応答をクライアントに返します-
CONNECTメソッド
クライアントがHTTP経由でWebサーバーへのネットワーク接続を確立するために使用します。 次の例は、ホストfinddevguides.comで実行されているWebサーバーとの接続を要求します-
サーバーとの接続が確立され、次の応答がクライアントに送り返されます-
OPTIONSメソッド
クライアントは、WebサーバーでサポートされているHTTPメソッドやその他のオプションを調べるために使用します。 クライアントは、OPTIONSメソッドのURL、またはサーバー全体を参照するアスタリスク(*)を指定できます。 次の例は、finddevguides.comで実行されているWebサーバーでサポートされているメソッドのリストを要求します-
サーバーは、たとえば、サーバーの現在の構成に基づいて情報を送信します-
TRACEメソッド
これは、HTTP要求の内容をリクエスターにエコーバックするために使用され、開発時にデバッグ目的で使用できます。 次の例は、TRACEメソッドの使用方法を示しています-
サーバーは、上記のリクエストに応じて次のメッセージを送信します-