gpt4 book ai didi

java - 为什么 Cookie 名称和值分别是 'http' 和 'proxy' 而没有在 eclipse 中创建?

转载 作者:太空宇宙 更新时间:2023-11-04 11:03:01 24 4
gpt4 key购买 nike

我正在尝试使用 eclipse 在 servlet 中创建一个简单的 cookie 程序。

事情是这样的:-

  protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub

response.setContentType("text/html");
PrintWriter out = response.getWriter();

Cookie[] cookies = request.getCookies();


if(cookies == null)
{
out.print("<b> Hello Stranger </b><br>");

}
else
{
for(Cookie cookie:cookies)
{
out.print("<b> Hello" + cookie.getValue() + "</b>");
}
}

out.print("<form action = '' method = 'post'>");
out.print("What is your name?");
out.print("<input type = 'text' name = 'username'><br>");
out.print("<br>");
out.print("<input type = 'submit'>");
out.print("</form>");


}

protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub

PrintWriter out = response.getWriter();
response.setContentType("text/html");

String str = request.getParameter("username");

Cookie[] cookies = request.getCookies();

if (cookies == null)
{
Cookie c = new Cookie("username",str);
c.setMaxAge(-1);
response.addCookie(c);
}

for(Cookie cookie: cookies)
{
out.print("<b> Hello," + cookie.getName() + "</b>");
}
}

使用eclipse在tomcat服务器中运行时我得到的不是 Hello Stranger 输出,而是 Hello http即使点击提交后它显示相同的内容而不是输入的名称。

最佳答案

您正在迭代(并打印)入站 HttpServletRequest 中包含的 cookie 列表,但您正在将新 cookie 添加到 HttpServletResponse。

HttpServletResponse有一个 addCookie() 方法,但它没有匹配的 getCookies() 方法,因此如果您希望查看已添加到响应对象中的 cookie,则需要解决此问题。有几个帖子介绍了这一点,例如 herehere .

关于java - 为什么 Cookie 名称和值分别是 'http' 和 'proxy' 而没有在 eclipse 中创建?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46688967/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com