我正在使用 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() 获取 servlet 中的 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 数组。