インターフェース WebRequest
- すべてのスーパーインターフェース:
RequestAttributes
- すべての既知のサブインターフェース:
AsyncWebRequest, NativeWebRequest
- すべての既知の実装クラス:
DispatcherServletWebRequest, FacesWebRequest, ServletWebRequest, StandardServletAsyncWebRequest
- 導入:
- 2.0
- 作成者:
- Juergen Hoeller, Brian Clozel
- 関連事項:
フィールドのサマリー
インターフェース RequestAttributes から継承されたフィールド
REFERENCE_REQUEST, REFERENCE_SESSION, SCOPE_REQUEST, SCOPE_SESSIONメソッドのサマリー
修飾子と型メソッド説明booleancheckNotModified(long lastModifiedTimestamp) 提供された最終変更タイムスタンプ(アプリケーションによって決定)を使用して、リクエストされたリソースが変更されたかどうかを確認します。booleancheckNotModified(@Nullable StringSE etag, long lastModifiedTimestamp) 提供されたETag(エンティティタグ)およびアプリケーションによって決定された最終変更タイムスタンプを指定して、リクエストされたリソースが変更されたかどうかを確認します。booleancheckNotModified(StringSE etag) 提供されたETag(エンティティタグ)を使用して、アプリケーションによって決定された、リクエストされたリソースが変更されたかどうかを確認します。このリクエストのコンテキストパスを返します(通常、現在の Web アプリケーションがマップされているベースパス)。getDescription(boolean includeClientInfo) 通常、リクエスト URI とセッション ID を含む、このリクエストの簡単な説明を取得します。指定された名前のリクエストヘッダーを返します。ない場合はnullを返します。リクエストヘッダー名に対してイテレータを返します。getHeaderValues(StringSE headerName) 指定されたヘッダー名のリクエストヘッダー値を返します。ない場合はnullを返します。このリクエストのプライマリロケールを返します。getParameter(StringSE paramName) 指定された名前のリクエストパラメーター、または存在しない場合はnullを返します。パラメーター名をマップキー、パラメーター値をマップ値として、リクエストパラメーターの不変のマップを返します。リクエストパラメーター名に対してイテレータを返します。getParameterValues(StringSE paramName) 指定されたパラメーター名のリクエストパラメーター値を返します。ない場合はnullを返します。存在する場合、このリクエストのリモートユーザーを返します。このリクエストのユーザープリンシパルがあれば、それを返します。booleanisSecure()このリクエストが安全な転送メカニズム(SSL など)を介して送信されたかどうかを返します。booleanisUserInRole(StringSE role) ユーザーがこのリクエストに対して指定されたロールを持っているかどうかを判断します。インターフェース RequestAttributes から継承されたメソッド
getAttribute, getAttributeNames, getSessionId, getSessionMutex, registerDestructionCallback, removeAttribute, resolveReference, setAttribute
メソッドの詳細
getHeader
getHeaderValues
getHeaderNames
getParameter
getParameterValues
getParameterNames
getParameterMap
getLocale
getContextPath
getRemoteUser
getUserPrincipal
isUserInRole
isSecure
boolean isSecure()このリクエストが安全な転送メカニズム(SSL など)を介して送信されたかどうかを返します。- 関連事項:
checkNotModified
boolean checkNotModified(long lastModifiedTimestamp) 提供された最終変更タイムスタンプ(アプリケーションによって決定)を使用して、リクエストされたリソースが変更されたかどうかを確認します。これにより、"Last-Modified" レスポンスヘッダーと HTTP ステータスが透過的に設定されます(該当する場合)。
典型的な使用箇所:
public String myHandleMethod(WebRequest request, Model model) { long lastModified = // application-specific calculation if (request.checkNotModified(lastModified)) { // shortcut exit - no further processing necessary return null; } // further request processing, actually building content model.addAttribute(...); return "myViewName"; }このメソッドは、条件付きの GET/HEAD リクエストで機能しますが、条件付きの POST/PUT/DELETE リクエストでも機能します。
注意 : この
#checkNotModified(long)メソッドのいずれかを使用できます。またはcheckNotModified(String)。HTTP 仕様で推奨されているように、強力なエンティティタグと Last-Modified 値の両方を適用する場合は、checkNotModified(String, long)を使用する必要があります。"If-Modified-Since" ヘッダーが設定されているが日付値に解析できない場合、このメソッドはヘッダーを無視し、レスポンスの最終変更タイムスタンプの設定に進みます。
- パラメーター:
lastModifiedTimestamp- アプリケーションが基礎となるリソースに対して決定したミリ秒単位の最終変更タイムスタンプ- 戻り値:
- リクエストが変更されていないものとして適格であるかどうか、リクエスト処理を中止し、コンテンツが変更されていないことをクライアントに伝えるレスポンスに依存するかどうか
checkNotModified
提供されたETag(エンティティタグ)を使用して、アプリケーションによって決定された、リクエストされたリソースが変更されたかどうかを確認します。これにより、該当する場合は "ETag" レスポンスヘッダーと HTTP ステータスが透過的に設定されます。
典型的な使用箇所:
public String myHandleMethod(WebRequest request, Model model) { String eTag = // application-specific calculation if (request.checkNotModified(eTag)) { // shortcut exit - no further processing necessary return null; } // further request processing, actually building content model.addAttribute(...); return "myViewName"; }注意 : この
#checkNotModified(String)メソッドのいずれかを使用できます。またはcheckNotModified(long)。HTTP 仕様で推奨されているように、強力なエンティティタグと Last-Modified 値の両方を適用する場合は、checkNotModified(String, long)を使用する必要があります。- パラメーター:
etag- アプリケーションが基になるリソースに対して決定したエンティティタグ。このパラメーターには、必要に応じて引用符(")が埋め込まれます。- 戻り値:
- リクエストがそれ以上の処理を必要としない場合は true。
checkNotModified
提供されたETag(エンティティタグ)およびアプリケーションによって決定された最終変更タイムスタンプを指定して、リクエストされたリソースが変更されたかどうかを確認します。これにより、"ETag" と "Last-Modified" のレスポンスヘッダー、および該当する場合は HTTP ステータスが透過的に設定されます。
典型的な使用箇所:
public String myHandleMethod(WebRequest request, Model model) { String eTag = // application-specific calculation long lastModified = // application-specific calculation if (request.checkNotModified(eTag, lastModified)) { // shortcut exit - no further processing necessary return null; } // further request processing, actually building content model.addAttribute(...); return "myViewName"; }このメソッドは、条件付きの GET/HEAD リクエストで機能しますが、条件付きの POST/PUT/DELETE リクエストでも機能します。
注意 : HTTP 仕様では、ETag と Last-Modified の両方の値を設定することが推奨されていますが、
checkNotModified(String)またはcheckNotModified(long)を使用することもできます。- パラメーター:
etag- アプリケーションが基になるリソースに対して決定したエンティティタグ。このパラメーターには、必要に応じて引用符(")が埋め込まれます。lastModifiedTimestamp- アプリケーションが基礎となるリソースに対して決定したミリ秒単位の最終変更タイムスタンプ- 戻り値:
- リクエストがそれ以上の処理を必要としない場合は true。
- 導入:
- 4.2
getDescription
通常、リクエスト URI とセッション ID を含む、このリクエストの簡単な説明を取得します。- パラメーター:
includeClientInfo- セッション ID やユーザー名などのクライアント固有の情報を含めるかどうか- 戻り値:
- 文字列としてのリクエストされた説明