cookie

来源:互联网 发布:淘宝店铺装修模板 编辑:程序博客网 时间:2024/05/29 14:10

cookie

概念:储存在用户本地的数据(也可以叫做浏览器缓存)

基本用途:


<!--1.保存登录状态-->
<!--2.跟踪用户行为-->
<!--3.进行民意的测试-->

来实现记录访问者的一些基本信息,而这些数据通常会经过加密处理

(比如:身份识别号码、密码、用户在 Web 站点购物的方式或用户访问该站点的次数)

<!--cookie的属性:-->
<!--1.name(必须属性)  表示cookie的名称-->
<!--2.value  对应的cookie值-->
<!--3.Domain   用来控制cookie对哪个域有效  例如:百度对.baidu.com所有的子域都是有效的.-->
<!--4.path  用来控制cookie发送的指定域的路径,默认是"/"-->
<!--5.expires  有效期-->
<!--6.secure   安全性  默认为空  传输的是布尔值-->
<!--ssl协议加密数据   https-->

多数网页编程语言都提供了对Cookie的支持。javascriptVBScriptDelphiASPSQLPHP、C#等。在这些面向对象的编程语言中,对Cookie的编程利用基本上是相似的,大体过程为:先创建一个Cookie对象(Object),然后利用控制函数对Cookie进行赋值、读取、写入等操作。

js使用:

拿个例子讲:

创建一个存储访问者名字的 cookie。

当访问者首次访问网站时,他们会被要求填写姓名。名字会存储于 cookie 中。

当访问者再次访问网站时,他们就会收到欢迎词。

(1)
首先,我们会创建一个可在 cookie 变量中存储访问者姓名的函数

function setCookie(c_name,value,expiredays){
// 参数: cookie 的名称、值以及过期天数。
var exdate = new Date();
 
exdate.setDate(exdate.getDate()+expiredays);
 
document.cookie=c_name+"="+escape(value+((expiredays==null)?"":";expires="+exdate.toGMTString());
//存入 document.cookie 对象。
}

//注意:escape()和unescape()是一对编码解码函数,一般用于URL中非ASCII字符的编码和解码!
//toGMTString() 方法可根据格林威治时间 (GMT) 把 Date 对象转换为字符串,并返回结果。

(2)

接着:我们要创建另一个函数来检查是否已设置 cookie

function getCookie(c_name){
 //检查 document.cookie 对象中是否存有 cookie
if(document.cookie.length>0){
 //检查我们指定的 cookie 是否已储存
c_start=document.cookie.indexOf(c_name+"=")
 
if(c_start!=-1){
 
c_start=c_start+c_name.length+1
c_end=document.cookie.indexOf(";",c_start)
//找到了我们要的 cookie,就返回值
if(c_end==-1){
c_end=document.cookie.length
return unescape(document.cookie.substring(c_start,c_end))
}
}
 
}
//返回空字符串
return ""
 
}

(3)

我们要创建一个函数,这个函数的作用是:如果 cookie 已设置,则显示欢迎词,否则显示提示框来要求用户输入名字。

function checkCookie(){
 
username=getCookie('username');
 
if(username!=null && username!=""){
alert('Welcome again'+username+'!');
}else{
username=prompt('Please enter your name:',"");
if(username!=null&&username!=""){
setCookie('username',username,365);
}
}

}


原创粉丝点击