有两个JSP文件,set_cookie.jsp
<%
String email = "[email protected]";
String pass = "111111";
Cookie emailCookie = new Cookie("email", email);
Cookie passCookie = new Cookie("pass", pass);
response.addCookie(emailCookie);
response.addCookie(passCookie);
out.println("cookie is setted");
%>get_cookie.jsp
<%
Cookie[] cooks = request.getCookies();
if(cooks!=null && cooks.length>0){
for(int i=0;i<cooks.length;i++){
out.println(cooks[i].getName()+"======"+cooks[i].getValue()+"<br>");
}
}else{
out.println("Cookie is null");
}
%>这两段代码先运行set_cookie.jsp,再运行get_cookie.jsp,在我本机(WindowXP)没任何问题,但当放到服务器(Windown2003)时,get_cookie.jsp得到的值是email=====harryzyp和pass=====111111,我的email原本是[email protected],为什么@后面的内容都得不到了呢,异常疑惑?Window2003问题吗?
等待中...

解决方案 »

  1.   

    我用的是windows2003,也想学习一下cookies,楼主能否教我一下?我正好也给您做一个测试~
      

  2.   

    企业级做法是:写cookie都要经过编码,读Cookie要解码。这样可以避免中文与特殊字符问题
    使用URLEncoder与URLDecoder两个类。
    你试试
      

  3.   


    同上,java比较BT, PHP/asp就不会这样
      

  4.   

    学习!!!!!
    企业级做法是:写cookie都要经过编码,读Cookie要解码。这样可以避免中文与特殊字符问题 
    使用URLEncoder与URLDecoder两个类。 
    你试试