客户端数据存储机制cookie

时间:2020-05-29
本文章向大家介绍客户端数据存储机制cookie,主要包括客户端数据存储机制cookie使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

在实际的web应用中经常需要在客户短存储一些客户信息,一方面是为了改善用户体验(如存储访问密码,历史表单信息),另一方面有效地减轻了服务器数据读取压力。

访问者在第一次访问页面时设置cookie变量是存储在客户端计算机中,当下浏览器请求某个页面时,就可以读取cookie中存储的值,从而实现客户数据存取。

下面将通过一个例子展示一个客户端数据存储的实际应用,执行流程如下“

  1. 创建一个存储访问者名字的cookie
  2. 当访问者首次访问网站时,访问者会被要求填写姓名信息,该姓名信息会存储于cookie中
  3. 当访问者再次访问网站时浏览器会显示欢迎词的信息

一、在javascript创建cookie

 

创建一个可cookie变量中存储访问者姓名的函数,代码如下:

Function setcookie(c_name,value,expiredays){
Var exdate = new Date()
Exdate.setDate(exdate,getDate()+expiredays)

Document.cookie= c_name + “=” + escape(value) +

((expiredays==null) ? “” : “; expires=”+exdate.toGMTstring())

}

代码解读

setCooiie()函数的功能是设置 cookie的名称,值及失效时间。首先将获取当前的日期转为有效的日期,然后设置cookie名称,值及失效时间,并将该值存入document.cookie对象。

一、从javascript取回cookie的值

从javascript 取回cookie的值,创建读取客户端cookie值的函数,同时判断当前cookie的状态。代码如下

Function getCookie(c_name){
If (document.cookie.length>0)
{
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)
If (c_end==-1) c_end=document.cookie.length
Return unescaped(document.cookie.substring(c_start,c_end))
//返回客户端cookie的值
}

代码解读

Getcookie()函数首先会判断document.cookie对象中是否存有cookie。如果document.cookie对象存有某些cookie值,那么会继续检查指定的cookie是否已储存。如果满足判断条件就返回cookie存储值,否则返回空字符串。

三、javascript 流程控制

当完成了cookie的创建和读取之后,需要创建一个流程控制函数。这个函数的作用是,如果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)}

}



}

原文地址:https://www.cnblogs.com/kaka666/p/12987509.html