12

フレームワークを使用して Web アプリケーションを開発しています。Web アプリケーションを使用spring MVCするたびに、ユーザーがブラウザーの [戻る] ボタンを使用して戻ることを制限したいと考えています。どうすればspringsでできますか?に組み込まれている機能はありspringますか?

4

2 に答える 2

14

アプリケーションで次のフィルタ クラスを使用します。このフィルタ クラスを web.xml に登録することを忘れないでください。

import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import javax.servlet.http.HttpServletResponse;

public class NoBrowserCacheFilter implements Filter{

    @Override
    public void destroy() {

    }

    @Override
    public void doFilter(ServletRequest req, ServletResponse res,
            FilterChain chain) throws IOException, ServletException {
        HttpServletResponse response=(HttpServletResponse)res;
        response.setHeader("Cache-Control", "no-cache, no-store, must-revalidate");
        response.setHeader("Pragma", "no-cache");
        response.setDateHeader("Expires", -1);
        chain.doFilter(req, res);
    }

    @Override
    public void init(FilterConfig arg0) throws ServletException {

    }

}

それだけです、それはあなたの問題を解決します。

于 2013-03-28T15:15:30.113 に答える
-1

フォールスバックになるこの単純なコードを使用できます。現在のページをリロードし、ブラウザの戻るボタンを無効にしようとします。これは、ブロックする目的の jsp 内にあります。

<script type="text/javascript">
    window.history.forward();
    function noBack() {
        window.history.forward();
    }
</script>

これを body タグに追加します。

body onload="noBack();" onpageshow="if (event.persisted) noBack();" onunload=""
于 2019-11-18T21:17:14.367 に答える