8

クリックジャッキングに取り組み、サイトが iframe によって開かれるのをブロックするために、「X-FRAME-OPTIONS」応答ヘッダーを追加する行の下に追加するサーブレットフィルターを作成しました。しかし、ページを実行してそのページの応答ヘッダーを見ると、そこにこのヘッダーが表示されません。理由はありますか?

public void doFilter(
        ServletRequest request, ServletResponse response, FilterChain chain
        ) throws IOException, ServletException
    {

        HttpServletResponse res = (HttpServletResponse)response;
        chain.doFilter(request, response);

        //Specify the mode
        res.addHeader("X-FRAME-OPTIONS", "DENY");
    }
4

1 に答える 1

16

を呼び出す前にヘッダーを追加する必要がありますdoFilter。ヘッダーと本文から制御が返されるまでdoFilterに、既に送信されているため、あなたaddHeaderは無視されます。

于 2012-07-07T02:56:23.160 に答える