クラス HiddenHttpMethodFilter
java.lang.ObjectSE
org.springframework.web.filter.GenericFilterBean
org.springframework.web.filter.OncePerRequestFilter
org.springframework.web.filter.HiddenHttpMethodFilter
- 実装されたすべてのインターフェース:
FilterEE
、Aware
、BeanNameAware
、DisposableBean
、InitializingBean
、EnvironmentAware
、EnvironmentCapable
、ServletContextAware
投稿されたメソッドパラメーターを HTTP メソッドに変換する
Filter
EE。HttpServletRequest.getMethod()
EE を介して取得できます。ブラウザーは現在 GET と POST のみをサポートしているため、一般的な手法(たとえば、プロトタイプライブラリで使用される)は、追加の非表示フォームフィールド(_method
)を含む通常の POST を使用して、「実際の」HTTP メソッドを渡すことです。このフィルターはそのパラメーターを読み取り、それに応じて HttpServletRequestWrapper.getMethod()
EE の戻り値を変更します。"PUT"
、"DELETE"
、"PATCH"
HTTP メソッドのみが許可されます。 リクエストパラメーターの名前はデフォルトで _method
に設定されていますが、methodParam
プロパティを使用して調整できます。
注: このフィルターは、POST 本体パラメーターを確認する必要があるため、マルチパート POST リクエストの場合、マルチパート処理後に実行する必要があります。通常は、web.xml
フィルターチェーンで、この HiddenHttpMethodFilter の前に Spring MultipartFilter
を配置します。
- 導入:
- 3.0
- 作成者:
- Arjen Poutsma, Juergen Hoeller
フィールドサマリー
クラス org.springframework.web.filter.OncePerRequestFilter から継承されたフィールド
ALREADY_FILTERED_SUFFIX
クラス org.springframework.web.filter.GenericFilterBean から継承されたフィールド
logger
コンストラクターのサマリー
メソッドのサマリー
修飾子と型メソッド説明protected void
doFilterInternal
(HttpServletRequestEE request, HttpServletResponseEE response, FilterChainEE filterChain) doFilter
と同じ契約ですが、単一のリクエストスレッド内のリクエストごとに 1 回だけ呼び出されることが保証されています。void
setMethodParam
(StringSE methodParam) パラメーター名を設定して、HTTP メソッドを探します。クラス org.springframework.web.filter.OncePerRequestFilter から継承されたメソッド
doFilter, doFilterNestedErrorDispatch, getAlreadyFilteredAttributeName, isAsyncDispatch, isAsyncStarted, shouldNotFilter, shouldNotFilterAsyncDispatch, shouldNotFilterErrorDispatch
クラス org.springframework.web.filter.GenericFilterBean から継承されたメソッド
addRequiredProperty, afterPropertiesSet, createEnvironment, destroy, getEnvironment, getFilterConfig, getFilterName, getServletContext, init, initBeanWrapper, initFilterBean, setBeanName, setEnvironment, setServletContext
フィールドの詳細
DEFAULT_METHOD_PARAM
デフォルトのメソッドパラメーター:_method
.- 関連事項:
コンストラクターの詳細
HiddenHttpMethodFilter
public HiddenHttpMethodFilter()
メソッドの詳細
setMethodParam
パラメーター名を設定して、HTTP メソッドを探します。- 関連事項:
doFilterInternal
protected void doFilterInternal(HttpServletRequestEE request, HttpServletResponseEE response, FilterChainEE filterChain) throws ServletExceptionEE, IOExceptionSE クラスからコピーされた説明:OncePerRequestFilter
doFilter
と同じ契約ですが、単一のリクエストスレッド内のリクエストごとに 1 回だけ呼び出されることが保証されています。詳細については、OncePerRequestFilter.shouldNotFilterAsyncDispatch()
を参照してください。デフォルトの ServletRequest および ServletResponse の代わりに、HttpServletRequest および HttpServletResponse 引数を提供します。
- 次で指定:
- クラス
OncePerRequestFilter
のdoFilterInternal
- 例外:
ServletExceptionEE
IOExceptionSE