cookie

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了cookie相关的知识,希望对你有一定的参考价值。

什么是cookie

cookie 是一些数据, 存储在电脑上的文本文件中,用于存储 web 页面的用户信息。
当 web 服务器向浏览器发送 web 页面时,在连接关闭后,服务端不会记录用户的信息。cookie 的作用就是用于解决 "如何记录客户端的用户信息"。

 

 

设置cookie

window.onload = function(){
    var date = new Date();
    date.setTime(date.getTime() + (6 * 1000));
    document.cookie = "things=coding; expires=" + date.toGMTString();
    document.cookie = "name=fftu;";
}

 

CASE 1

打开控制台,键入

document.cookie

返回 "name=fftu; things=coding"

 

CASE 2

6s后再次测试,返回 "name=fftu" 

 

CASE 3

将以上代码注释掉,关闭浏览器,重启页面,再次测试, "name=fftu" 

 

CASE 4

index.html

<body>
    <a href="./childPage.html" target="_blank">跳转</a>
</body>

childPage不引入main.js

 

打开主页面、子页面

主页面设置cookie后刷新,子页面不刷新,cookie值与JS脚本同步

主页面设置cookie后不刷新,子页面刷新,cookie值与JS不同步

主页面删除cookie后刷新,子页面不刷新,cookie值与JS脚本同步

主页面删除cookie后不刷新,子页面刷新,cookie值与JS不同步

 

结论:

一条键值对设置一个expires

没有设置expires的cookie不会过期

每当脚本改变cookie值,必须刷新引入脚本的HTML文件。其它的页面都可以访问到cookie值

 

注意:

exipres后不加分号

Date需要转为字符串类型赋值给expires,因为cookie是字符串类型的数据

 

修改cookie

与创建cookie类似

document.cookie = "name=jiao";

 

 

删除cookie

var date = new Date();
document.cookie = "name=; expires=" + date.toGMTString();

 

以上是关于cookie的主要内容,如果未能解决你的问题,请参考以下文章

JavaScript单行代码,也就是代码片段

XSS:如何从 C# 中的字符串中删除 JS 片段?

Django cookie 横幅:window.wpcc 未定义

最详细的cookie和浏览隐私之间的关系

c#如何采集需要登录的页面

IE无法获得cookie,ie不支持cookie的解决办法,火狐支持