猿问

response.addCookies()方法有问题?

        //将商品编号保存在Cookie对象中
        String list=""; //list作为Cookie对象的值,shopId作为键
              Cookie [] cookies = request.getCookies();  //首先,遍历浏览器中的cookie,如果有上次的cookie值,则取出再次追加当前浏览的商品id,和一个逗号.(用来在业务层分割出浏览过的商品id数组)
              if(cookies!=null&&cookies.length>0){
                  for(Cookie c:cookies){
                      if(c.getName().equals("shopId")){
                          list += c.getValue();
                      }
                  }
              }
              
              list += request.getParameter("id")+",";
              Cookie cookie = new Cookie("shopId",list);
              response.addCookie(cookie); //测试了几遍,就是这行代码出错,去掉则可以正常运行,但是无法使用cookie保存记录。加上这行代码却又抛出异常,显示为Cookie Value中加入了invalid character(无效字符)

慕标1118871
浏览 3641回答 1
1回答

秋凉念夏y

你把分隔符 “,” 换成“#” 试试,而且你的代码没有过滤掉访问相同商品时的id
随时随地看视频慕课网APP

相关分类

Java
我要回答