4
ユーザがログインページにリダイレクトされた場合、ログイン後に、それらが元の宛先ページにリダイレクトされるようにする方法最初にクリックした)?ログイン前に見ていたものを実際のページにリダイレクト
ユーザがログインページにリダイレクトされた場合、ログイン後に、それらが元の宛先ページにリダイレクトされるようにする方法最初にクリックした)?ログイン前に見ていたものを実際のページにリダイレクト
ログインページにリダイレクトされたときに、最初に要求されたURLをリクエストパラメータとして渡します。 login.jsp
で
String from = URLEncoder.encode(request.getRequestURI(), "UTF-8");
if (request.getQueryString() != null) {
from += "?" + request.getQueryString();
}
response.sendRedirect("login.jsp?from=" + from);
、非表示の入力フィールドとしてターゲットを提出ログインフォームに渡します。
<input type="hidden" name="from" value="${fn:escapeXml(param.from)}" />
(注:HTMLにユーザ制御データを再表示するときfn:escapeXml()
はXSSを防ぎます)、それがあるかどうかを確認し、それに応じて扱う、ログインアクションで
。
String from = request.getParameter("from");
if (from != null && !from.isEmpty()) {
response.sendRedirect(from);
} else {
response.sendRedirect("home.jsp");
}
fn:escapeXmlの定義されていないエラーが発生しました。私のプロジェクトに含まれるjstlのlibと、私のページの頭の中で参照される関数ライブラリ – Vnge