GETとPOSTの処理内容
ブラウザなどのクライアントから送られてくるリクエストボディ inputName=john&inputEmail=mail@somewhere.co.jp ↓「キー」+「値」の対としてWEBアプリに渡されている。 гMap――――――――――――――――――――――――――
гSet |
|
Map.Entry("inputName", "john") | |
Map.Entry("inputEmail", "mail@somewhere.co.jp") | |
∟――――――――――――――――――――――――― |
リクエストに対するGetParameterが必要。 String name = req.getParameter("inputName"); String email = req.getParameter("inputEmail"); これらのブラウザ→Map→パラメータを取得
という流れはServletというクラスで既にまとめられている。
なので、アプリには String name = req.getParameter("inputName"); String email = req.getParameter("inputEmail"); を書くだけでよい。
だからExpend HttpServletとクラスの一番上に書いている。
リクエスト内容
GET
GET /receiveParam?inputName=john&inputEmail=mail@somewhere.co.jp HTTP/1.0
→URLの後ろにパラメータ
POST
POST /receiveParam HTTP/1.0
Content-Length: 46
/* 〜省略〜 */
inputName=john&inputEmail=mail@somewhere.co.jp
→バイト数やヘッダ情報なども含め、数々の情報と空行の後にようやくパラメータがある。だからこそ表示されない。