2016-07-20 10 views
0

私のアプリケーションではStrutsを使用しています。web.xmlにフィルタを導入して、対応するアクションまたは.doに達する前にリクエストで利用可能な悪質な文字をチェックしました。 悪意のあるキャラクタが使用可能な場合は、エラーページにリダイレクトする必要があります。そうでない場合は、対応するアクションまたは.doにリクエストを許可します。フィルタチェック後に元のリクエストにリクエストを転送するにはどうすればよいですか?httpリクエストを転送するには

<filter> 
     <filter-name>MaliciousFilter</filter-name> 
     <filter-class>com.MaliciousFilter</filter-class> 
    </filter> 
+1

どのStrutsを使用していますか? –

答えて

0

だけ

chain.doFilter(request, response); 

を呼び出すと、あなたは、フィルタチェーンダウンバック要求を渡します。フィルタがそれ以上なければ、元のアクションが呼び出されます。

+0

情報ありがとうございます。私はそれを試してみましょう。 – Mansrad

+0

それは働いていますが、他にもいくつか問題があります。私がパートを取得しようとするとき。マルチパート/フォームデータの場合は空になります。私はgetPartsをHttpServletRequestでのみ得ることができます。しかし、doFilter内のHttpServletRequestにアクセスすることはできません。私はservletRequestからHttpServletRequestへのキャストをタイプします。私はgetPartsの空の値を取得しています。解決方法を教えてください。 (最終パートパート:(HttpServletRequest)servletRequest).getParts()) – Mansrad

+0

には、ServletRequestからの型キャストなしでdoFilter内のHttpServletRequestにアクセスする方法があります。タイプカーストの場合は、getPartsを空の値として取得するためです。 – Mansrad

関連する問題