GETメソッドとPOSTメソッド|情報処理安全確保支援士試験 令和7年春期午前Ⅱ 問20

出典:令和7年春期 午前Ⅱ 問20 分野:ネットワーク / ネットワーク応用
Webページ内のHTMLフォームに入力されたデータがWebサーバに送られる際には,HTTPプロトコルのGETメソッド又はPOSTメソッドを用いたリクエストメッセージが使用される。このとき,入力されたデータはリクエストメッセージのどの部分に含まれるか。ここで,HTTPのバージョンはHTTP/1.1とし,リクエストメッセージは,リクエスト行,ヘッダー,メッセージボディの順で構成されているものとする。
  • ア:GETメソッドが使用される場合:リクエスト行 / POSTメソッドが使用される場合:ヘッダー
  • イ:GETメソッドが使用される場合:リクエスト行 / POSTメソッドが使用される場合:メッセージボディ
  • ウ:GETメソッドが使用される場合:ヘッダー / POSTメソッドが使用される場合:ヘッダー
  • エ:GETメソッドが使用される場合:ヘッダー / POSTメソッドが使用される場合:メッセージボディ
解説

GETメソッドとPOSTメソッドは、WebブラウザからWebサーバへ情報を送るときの代表的な方法です。たとえば、検索キーワードを送ったり、ログイン画面で入力したユーザー名やパスワードを送ったりするときに使われます。

メソッド パラメータの送り方 特徴
GET URLの末尾に付けて送る URLに内容が見える。検索やページ指定などに使われる /search?q=security
POST メッセージボディに入れて送る URLには内容が見えない。ログインやフォーム送信などに使われる 本文に username=taro&password=abcd1234

GETメソッドは、「URLに情報をくっつけて送る方法」です。一方、POSTメソッドは、「本文部分に情報を入れて送る方法」です。

したがって、が適切です。

❌他選択肢が誤りの理由
ア:GETメソッドが使用される場合:リクエスト行 / POSTメソッドが使用される場合:ヘッダー
⇒POSTメソッドのデータ格納場所がヘッダー、という点で違います。POSTの入力データは通常、メッセージボディに含まれます。
ウ:GETメソッドが使用される場合:ヘッダー / POSTメソッドが使用される場合:ヘッダー
⇒GET、POSTともにヘッダー、という点で違います。GETはリクエスト行、POSTはメッセージボディです。
エ:GETメソッドが使用される場合:ヘッダー / POSTメソッドが使用される場合:メッセージボディ
⇒GETメソッドのデータ格納場所がヘッダー、という点で違います。GETの入力データはリクエスト行に含まれます。
TSUNAGARU-ADVICE

まず押さえたいこと

HTMLフォームの入力データは、GETメソッドではURLの一部として送られ、POSTメソッドでは本文として送られます。つまり、GETはリクエスト行、POSTはメッセージボディに含まれると整理することが重要です。

迷ったときの判断軸

GETでは、URLの後ろに「?」を付けてパラメータを並べるため、リクエスト行に入力データが含まれます。一方でPOSTでは、入力データをメッセージボディに入れて送信するため、ヘッダーに含まれるわけではありません。

科目Bにつなげるために

科目Bでは、HTTPリクエストを見て、どこにパラメータや認証情報が含まれているかを読み取る力が問われます。GETとPOSTは用途だけでなく、リクエストメッセージ内でデータが置かれる場所まで結び付けて理解しておきましょう。