【问题标题】:How to call a javascript cookie in servlet?如何在 servlet 中调用 javascript cookie?
【发布时间】:2013-06-02 06:04:03
【问题描述】:

我尝试使用

从 javascript 获取 cookie 到 servlet

request.getcookie()

方法。但我发现该值为空。

有没有办法从 javascript 获取 cookie 到 servlet?

【问题讨论】:

标签: java javascript servlets


【解决方案1】:

试试这个

Cookie[] cookies = request.getCookies();


for (int i = 0; i < cookies.length; i++) {
    Cookie c = cookies[i];
     c.getName()  //cookie name
    c.getValue()   //cookie value

  }

【讨论】:

    【解决方案2】:
    for (Cookie c : request.getCookies()) {
       if("myCookieName".equals(c.getName()) {
         System.out.println(c.getValue());
       }
    }
    

    【讨论】:

      【解决方案3】:

      试试这个

      Cookie[] cookie = request.getCookies();
      if(cookie != null && cookie.length > 0) {
          System.out.println("CkInfo");
          for(int i = 0;i < cookie.length; ++i) {
          System.out.println("["+i+"] info");
          System.out.println("Name: "+cookie[i].getName());
          System.out.println("Comment: "+cookie[i].getComment());
          System.out.println("Domain: "+cookie[i].getDomain());
          System.out.println("MaxAge: "+cookie[i].getMaxAge());
          System.out.println("Path: "+cookie[i].getPath());
          System.out.println("Value: "+cookie[i].getValue());
          }
      }
      

      【讨论】:

        【解决方案4】:

        您无法从 servlet 获取 JS cookie。其他答案显示您获得 HTTP Only cookie

        我的意思是如果你在前端有

        document.cookie = "username=John Doe";
        

        这将创建一个cookie,你可以在前端用JS获取,但你不能在后端获取它

        request.getCookies()
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2011-09-07
          • 2013-05-26
          • 1970-01-01
          • 2014-09-30
          • 1970-01-01
          • 1970-01-01
          • 2015-10-07
          • 2012-06-18
          相关资源
          最近更新 更多