Java EE で動的 Web プロジェクトを作成しています。よく理解すれば、サーバーには JSP ページが用意されています。したがって、Cookie を読み取りたい場合、それを読み取るためにサーバーに対して get/post 要求を行う必要はないと思います。
それが私の質問です。正式な doGet/doPost を使用せずに、このユーザーが持っているすべての Cookie を取得するにはどうすればよいですか?
Java EE で動的 Web プロジェクトを作成しています。よく理解すれば、サーバーには JSP ページが用意されています。したがって、Cookie を読み取りたい場合、それを読み取るためにサーバーに対して get/post 要求を行う必要はないと思います。
それが私の質問です。正式な doGet/doPost を使用せずに、このユーザーが持っているすべての Cookie を取得するにはどうすればよいですか?
JSTL を使用すると、次のようなことができます。
<c:forEach items="${cookie}" var="currentCookie">
${currentCookie.name} - ${currentCookie.value}<br/>
</c:forEach>
およびforEach
使用外${cookie.cookieName.value}
完全を期すために、request.getCookie() を使用してサーブレットで Cookie のリストを取得する方法を示します。
public class TestServlet extends HttpServlet {
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
req.getCookies();
for (Cookie c : req.getCookies())
{
System.err.println(c.getName() + ":" + c.getValue());
}
}
}
JSP で以下を使用します。
<%
Cookies[] coockies = request.getCookies();
%>
これは、リクエストで受け取った Cookie の配列を返します。