はじめに
なんらかのホームページを見たいとき、 検索して送信すればホームページが表示されます。
何の変哲もない動作ですが、 実はこの数秒間の間に、
という処理が動いています。
このカリキュラムを閲覧するときにも行われています。
WebクライアントとWebサーバーの間で行われているやり取りについて学んでいきましょう。
Step1: 概念を知る
HTTP (Hypertext Transfer Protocol)
WebクライアントとWebサーバー間の、 要求 (リクエスト) と応答 (レスポンス) を制御している通信規格。
WebクライアントとWebサーバー間通信の約束事 (プロトコル)。
GET (メソッド)
HTTPのメソッドの一つ。
ホームページのサーバから情報を取得してくる時に使用する。
値をリクエストURLの後に付け加えてサーバに送る。
単にGETといったり、 GETメソッドと呼ばれることがある。
Step2: 使い方を知る
URL
突然ですが、 以下のようなURLを見たことがあるでしょうか?
見たことがないという人は、 様々なホームページを閲覧しているときに意識してみましょう。
Webクライアントや設定によっても変わりますが、だいたい画面の上部か左下に表示されています。
どのような構成になっているかと言いますと、
となっていて、 どのURLもだいたいこのような構成になっています。
今回取り上げる部分は、 ? 以降のパラメータとデータの部分です。
パラメータ、 データ
WebクライアントからWebサーバへ、 パラメータにデータを入れて渡すことによって、 リクエストを行います。
渡されたデータによってWebサーバは何らかのレスポンスを行います。
ログイン用URLを見ると、 パラメータ=なし となっている部分がありました。
なしの部分にデータを入れてパラメータとして渡すと、 データに誤りがなければログインが成功します。
パラメータ部分に直接データを入力してリクエストする方法がGET送信です。
GET送信の注意点
GET送信の方法は、 パラメータが明示的というのが特徴です。
そのため以下のようなメリット、デメリットがあります。
・メリット
パラメータを見れば、ページの遷移や、 行われている処理がわかる。
・デメリット
パスワードなど個人情報であっても筒抜けになってしまう。
パラメータの取得
パラメータはソースコード上で取り出すことができます。
HttpServletRequestインタフェースの、requestオブジェクトを使用してパラメータを読み込みます。
パラメータを読み込むには、 getParameter() メソッドを使用します。
