当前位置: 首页 > 图文教程 > .Net技术 > ASP.NET > ASP.NET:ASP.NET利用Cookie处理网上重复投票

ASP.NET
浅谈如何在ASP.NET中了解LINQ语句性能
MRS实现和扩展一个Service Contract
ASP.NET:ASP.NET创建Web服务之声明XML Web服务
ASP.NET:asp.net中常用的一些小技巧
ASP.NET:ASP.NET 数据库缓存依赖
ASP.NET:.NET监控技术应用与分析
Asp.net:Asp.net多语言
ASP.NET:asp.net中接口和抽象类及区别概述
ASP.NET:小编谈理解.NET委托和事件
ASP.NET:小编浅谈asp.net(500) 内部服务器错误解决方法
ASP.NET:C#.Net程序开发中的Socket介绍
ASP.NET:小编浅述面向接口的编程
ASP.NET:.Net参数基础论
ASP.NET:小议枚举类型
ASP.NET:小编浅谈.NET多态中的重写与重载
ASP.NET:浅谈.NET垃圾回收机制(GC)
ASP.NET:ASP.NET中把彩色图片变成黑白图片
ASP.NET:ASP.NET中配置文件的加密与解密
ASP.NET:ASP.NET实现用户第二次访问网站不用提交信息
ASP.NET:ASP.NET利用Cookie处理网上重复投票

ASP.NET:ASP.NET利用Cookie处理网上重复投票


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-08-14   浏览: 434 ::
收藏到网摘: n/a

Cookie提供了一种在Web应用程序中存储用户特定信息的方法。例如用户第一次浏览Web网页时,Cookie将会记录下用户登录的IP地址,在Cookie的有效期内,当该用户再次发出浏览比Web站点中页面的请求时,浏览器就会和服务器交换Cookie信息,识别该用户的身份。本文章示例就是利用这个特性自定义Cookie对象来防止重复投票。

在本示例中,将客户端的IP地址保存在Cookie对象中,主要代码如下:

//创建HttpCookie类型的对象并为它分配名称为userID

HttpCookie newCookie = new HttpCookie(“userIP”) ;

//Cookie的子项赋值,即将客户端IP地址赋给Cookie的子项,并将其命名为IPaddress

newCookie.Values.Add(“IPaddress”,UserIP);

//设置Cookie的失效期

newCookie.Expires=DateTime.MinValue;

//将该Cookie添加到Cookies集合中

Response.Cookies.Add(newCookie);

   注意:在编写代码时,可以根据实际情况设置Cookie的实效期。如果没有设置Cookie失效期,他们仅保存到关闭浏览器程序为止;如果将Cookie对象的Expires属性设置为MinValue,则表示Cookie永远不会过期。当然,还可以将Cookie对象的Expires属性设置为具体某一天,例如将上述代码中Cookie对象的失效期设置为当前系统时间的下一天,代码如下:

newCookie.Expires =DateTime.Now.AddDays(1);

   Cookie中获取客户端的IP地址并判断该IP地址是否已访问过网络,如果已访问过,则弹出提示框,提示用户,主要代码如下:

//获取客户端IP地址

String UserIP=Request.UserHostAddress.ToString();

//获取名为userIPCookie对象

HttpCookie oldCookie =Request.Cookies[“userIP”];

//判断该Cookie对象是否存在

If(oldCookie!=null)

{

  //Cookie中获取客户端IP地址

  String userIP =oldCookie.Values[“IPaddress”];

  If(UserIP.Trim()==userIP.Trim())

  {

    Response.Write(“<script>alert(‘一个IP地址只能投一次票,谢谢您的参与!’)history.go(-1);</script>”);

     Return;

  }

}