GETメソッドとPOSTメソッド|情報処理安全確保支援士試験 令和7年春期午前Ⅱ 問20
出典:令和7年春期 午前Ⅱ 問20
分野:ネットワーク / ネットワーク応用
Webページ内のHTMLフォームに入力されたデータがWebサーバに送られる際には,HTTPプロトコルのGETメソッド又はPOSTメソッドを用いたリクエストメッセージが使用される。このとき,入力されたデータはリクエストメッセージのどの部分に含まれるか。ここで,HTTPのバージョンはHTTP/1.1とし,リクエストメッセージは,リクエスト行,ヘッダー,メッセージボディの順で構成されているものとする。
- ア:GETメソッドが使用される場合:リクエスト行 / POSTメソッドが使用される場合:ヘッダー
- イ:GETメソッドが使用される場合:リクエスト行 / POSTメソッドが使用される場合:メッセージボディ
- ウ:GETメソッドが使用される場合:ヘッダー / POSTメソッドが使用される場合:ヘッダー
- エ:GETメソッドが使用される場合:ヘッダー / POSTメソッドが使用される場合:メッセージボディ
TSUNAGARU-ADVICE
まず押さえたいこと
HTMLフォームの入力データは、GETメソッドではURLの一部として送られ、POSTメソッドでは本文として送られます。つまり、GETはリクエスト行、POSTはメッセージボディに含まれると整理することが重要です。
迷ったときの判断軸
GETでは、URLの後ろに「?」を付けてパラメータを並べるため、リクエスト行に入力データが含まれます。一方でPOSTでは、入力データをメッセージボディに入れて送信するため、ヘッダーに含まれるわけではありません。
科目Bにつなげるために
科目Bでは、HTTPリクエストを見て、どこにパラメータや認証情報が含まれているかを読み取る力が問われます。GETとPOSTは用途だけでなく、リクエストメッセージ内でデータが置かれる場所まで結び付けて理解しておきましょう。
GETメソッドとPOSTメソッドは、WebブラウザからWebサーバへ情報を送るときの代表的な方法です。たとえば、検索キーワードを送ったり、ログイン画面で入力したユーザー名やパスワードを送ったりするときに使われます。
GETメソッドは、「URLに情報をくっつけて送る方法」です。一方、POSTメソッドは、「本文部分に情報を入れて送る方法」です。
したがって、イが適切です。
❌他選択肢が誤りの理由ア:GETメソッドが使用される場合:リクエスト行 / POSTメソッドが使用される場合:ヘッダー
⇒POSTメソッドのデータ格納場所がヘッダー、という点で違います。POSTの入力データは通常、メッセージボディに含まれます。
ウ:GETメソッドが使用される場合:ヘッダー / POSTメソッドが使用される場合:ヘッダー
⇒GET、POSTともにヘッダー、という点で違います。GETはリクエスト行、POSTはメッセージボディです。
エ:GETメソッドが使用される場合:ヘッダー / POSTメソッドが使用される場合:メッセージボディ
⇒GETメソッドのデータ格納場所がヘッダー、という点で違います。GETの入力データはリクエスト行に含まれます。