1、リクエスト
リクエストは、リクエストライン、メッセージヘッダ、改行、メッセージボディで組まれる。
主なリクエストヘッダは、
Accept | クライアントが利用可能なデータメディアタイプを指定。 |
Accept-Charset | クライアントが利用可能な文字セットを指定。 |
Accept-Encoding | クライアントが利用可能なエンコード方式を指定。 |
Accept-Language | クライアントが利用可能な言語コードを指定。 |
Authorization | ログインにサーバが必要な認証情報(ユーザ名:パスワード)を格納。 |
From | ユーザのメールアドレスを通知。セキュリティ問題に注意。 |
Host | リクエスト先サーバ名(DNS)を指定。HTTP/1.1では必須。 |
If-Modified-Since | GETコマンドで日時を指定し、指定日時以降更新がなかった場合はデータを送らないことの条件指定。 |
If-Range | エンティティタグが一致しなかった場合にデータを送る指定。 |
If-Unmodified-Since | 日時を指定し、指定日時以降更新がなかった場合のみデータを取得できることの条件指定。 |
Proxy-Authorization | proxyサーバにログインが必要な場合、認証情報を格納。 |
Range | 取得するデータのバイトレンジを指定。エンティティの一部を指定できる。 |
Referer | リソースを参照しているドキュメント(参照元)のURLを通知。 |
User-Agent | リクエストしているブラウザの情報を通知。 |
メッセージボディは、
・Postの場合は、入力パラメータが送信される
・Getの場合は、メッセージボディは空
リクエストラインの情報取得は、javax.servlet.http.HttpServletRequestインタフェースを利用する。
・getRequestURI()
・getRequestURL()
・getProtocol() 等々
2、レスポンス
主なレスポンスヘッダは、
Accept-Ranges | レスポンスしたデータのレンジ(バイト)を通知。 |
Age | キャシュされたレスポンスの時間(秒)を通知。 |
Content-Language | ドキュメントが記述されている言語。 |
Content-Length | ドキュメントを含むHttpレスポンスの長さ。 |
Content-Type | ドキュメントのMIMEタイプ。 |
Last-Modified | ドキュメントの最終更新日。 |
Expires | コンテンツの有効期限を示す。 |
Location | リダイレクト先を指定。 |
Retry-After | サービスの一時停止時間を通知。 |
Server | サーバアプリケーションの種類を通知。 |
WWW-Authentica | クライアントに対し認証(ユーザ名:パスワード)を請求。 |
レスポンス操作は、javax.servlet.http.HttpServletResponseインタフェースを使う。
・addCookie()
・addHeader()
・setHeader() 等々