您的位置:首页 > Web前端 > JavaScript

javascript中对cookie的存取查操作

2015-12-08 17:01 846 查看

cookie

浏览器向服务器请求得到响应后 , 就与服务器断开连接 , 那么服务器该如何记住某个用户呢 ? 比如你登陆一个网站 , 在站内跳转到另一个板块后 , 服务器怎么确认你是刚才已经登陆的那个用户呢 ? 

这里就要用到 cookie , 一个可以让浏览器存储用户信息的功能 .

cookie都是以 name = value 这种成对形式存储 , 所有的name = value以分号间隔 , 最终连成一个字符串存入cookie中 . 例如 :

cookie = " username = John ; sex = m ; expires = Thu, 18 Dec 2013 12:00:00 UTC  " ;


除了可以使用 username 和 sex 这种自定义的 cookie 名 ,

expires 是专用的 , 用来设置过期时间 , 时间要使用 UTC 格式 . 默认的有效期是直到你关闭了页面 .

以下代码来自 w3schools 是一个完整的设置 \ 查询 \ 取出 cookie 的方法示例

<!DOCTYPE html>
<html>
<head>
<script>

// 设置 cookie
function setCookie(cname,cvalue,exdays) {
var d = new Date();
d.setTime(d.getTime() + (exdays*24*60*60*1000));
var expires = "expires=" + d.toGMTString();
document.cookie = cname+"="+cvalue+"; "+expires;
}

// 取出 cookie
function getCookie(cname) {
var name = cname + "=";
var ca = document.cookie.split(';');
for(var i=0; i<ca.length; i++) {
var c = ca[i];
while (c.charAt(0)==' ') c = c.substring(1);
if (c.indexOf(name) == 0) {
return c.substring(name.length, c.length);
}
}
return "";
}

// 检查指定 cookie 是否存在
function checkCookie() {
var user=getCookie("username");
if (user != "") {
alert("Welcome again " + user);
} else {
user = prompt("Please enter your name:","");
if (user != "" && user != null) {
setCookie("username", user, 30);
}
}
}

</script>
</head>
<body onload="checkCookie()"> <!-- 页面加载完成后调用 -->
</body>
</html>


在线代码示例
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  javascript cookie