日期:2014-05-17  浏览次数:20903 次

jsp中为什么读取到的cookie的value和预想不一样?
服务器向客户端发送cookie时,发送的cookie的值是admin,从服务器读取客户端的cookie时,cookie的值就变成0967F215EC5C6DD5D2568B3B6679042F,客户端使用ie浏览器,在windows的cookie文件夹里只有一个cookie记事本文件,还有一个叫index的文件,我不知道它是什么。
这是怎么回事?发送cookie代码:
Cookie c1=new Cookie("username","admin");
         c1.setMaxAge(60*60*24);
         c1.setPath("/");
    response.addCookie(c1);
读取cookie代码:
Cookie[] myCookie1=request.getCookies();
for(int n1=0;n1<myCookie1.length-1;n1++)
      {
             Cookie newCookie1= myCookie1[n1];
                          String temp3=newCookie1.getValue();
out.print(temp3);

------解决方案--------------------
某非加密了?
------解决方案--------------------
Cookie存放在本地硬盘,以明文形式存放的,不会加密
------解决方案--------------------
你读的那个不是你存储的值,你循环为啥把最后一个去掉了。试试下边这个,length别减1

        Cookie[] myCookie1 = request.getCookies();
        for (int n1 = 0; n1 < myCookie1.length; n1++) {
            Cookie newCookie1 = myCookie1[n1];
            String temp3 = newCookie1.getValue();
            out.print(newCookie1.getName() + "=" + temp3);
        }