帮帮忙 有谁知道自己存储的cookies 总是获取不到相应的cookies值 ?

本文详细阐述了在服务器上通过代码设置Cookie并在另一jsp界面读取Cookie的方法,分析了可能导致Cookie获取失败的原因,并提供了解决方案。

   在服务器上,登录界面加上 如下代码:

     String _username="good";
  if( _username !=null && !"".equals(_username)){
      Cookie cookie=new Cookie("usernamecookie",_username);
      cookie.setMaxAge(365*24*60*60); //保存365天
      response.addCookie(cookie); //写COOKIE
   }

  在登录成功后, 在另一jsp界面写的代码如下:

  Cookie cookies[]=request.getCookies(); //读出用户硬盘上的Cookie,并将所有的Cookie放到一个cookie对象数组里面
Cookie sCookie=null;  for(int i=0;i<cookies.length-1;i++){    //用一个循环语句遍历刚才建立的Cookie对象数组
   sCookie=cookies[i];   //取出数组中的一个Cookie对象
   if(sCookie!=null){   
    out.println(sCookie.getName());
     }
   }  

现在就是获取不到我在登录界面存的cookies值,我觉得没什么问题,想知道是什么原因,朋友们知道的帮帮忙啊。

 

 

在网页中读取 `cookies` 的可以通过 JavaScript 和服务器端语言(如 ASP.NET)实现。以下是具体的实现方法: ### 使用 JavaScript 读取 cookies 在网页中,JavaScript 可以通过 `document.cookie` 属性获取当前页面的所有 cookies,这些 cookies 会以字符串的形式返回,格式类似于 `cookie1=value; cookie2=value; cookie3=value` [^2]。 以下是一个简单的示例代码,用于读取指定名称的 cookie : ```javascript function getCookie(name) { var cookies = document.cookie.split(';'); // 将 cookies 字符串分割为数组 for (var i = 0; i < cookies.length; i++) { var cookie = cookies[i].trim(); // 去除每个 cookie 前后的空格 if (cookie.indexOf(name + '=') === 0) { // 检查 cookie 是否以指定名称开头 return cookie.substring(name.length + 1, cookie.length); // 返回匹配的 cookie } } return null; // 如果没有找到匹配的 cookie,则返回 null } // 示例:读取名为 "name" 的 cookie var cookieValue = getCookie('name'); alert(cookieValue); ``` ### 使用 ASP.NET 读取 cookies服务器端,ASP.NET 可以通过 `Request.Cookies` 方法获取客户端发送到服务器cookie 。如果指定的 cookie 存在,可以通过其 `.Value` 属性获取对应的 [^3]。 以下是一个简单的 ASP.NET 示例代码: ```csharp protected void Page_Load(object sender, EventArgs e) { if (Request.Cookies["person"] != null) // 检查是否存在名为 "person" 的 cookie { string _value = Request.Cookies["person"].Value; // 获取 cookie Response.Write(_value); // 在页面上显示 cookie } } ``` ### 使用浏览器直接查看 cookies 对于调试目的,可以直接查看浏览器存储cookies 文件。例如,在旧版本的 Internet Explorer(如 IE5)中,cookies保存在 Windows 目录下的 `cookies` 文件夹中,文件名类似于 `wudong@15seconds[1].txt`。需要注意的是,现代浏览器通常会对 cookies 进行编码处理,因此直接查看时可能需要解码 [^1]。 ### 总结 无论是通过 JavaScript 还是服务器端语言(如 ASP.NET),读取网页中的 cookies 都是非常直接的过程。根据具体需求选择合适的方法即可。 ---
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值