Cookie,是站点为了访客的一些信息来区分用户(Identifier)或者传递信息,特别是在big data的现在,更有利于站点site对用户行为和地区倾向进行大数据分析,也可以为推荐系统做前期的基础数据训练集。
一般存在浏览器目录中的文本文件中
前面我们说了Cookie一般存在浏览器目录中的文本文件中,并且会根据domain分开存放,比如,当你输入jianshu.com的时候,浏览器会向jianshu发送一个request,然后server根据request来返回response,把结果在显示器中显示,当你发送这个request的时候,浏览器会寻找当前浏览器目录中是否存在jianshu.com的相关cookie,如果有,浏览器会把Cookie文件中的数据放在request header中一起向server发送,服务器收到Cookie数据,服务器会根据你的cookie信息做一些相应的处理,比如第一次访问的话,会为你创建一个新的session id,否者来检测你是否需重新登录等等 *** 作。
主要包括server、expires、name、value、secure、httpOnly、path,其中服务器只想知道name和value字段,其余的字段有的为了存储,有的为了安全性
比如在chrome下打开 jianshu.com ,F12 ->Application ->Cookies -> https://www.jianshu.com
分为两种:第一种在前端对cookie进行 *** 作,以chrome为例子,可以直接在console里边对cookie进行修改,例如我们将 default_font 改成 Simplified (当然这只是举个例子,至于修改完重新发送请求到jianshu server之后会不会有作用,这个取决于jianshu server),F12 ->Console,输入:
注意:name、domain、path一定要对应正确,这里的cookie domain为 www.jianshu.com ,所以不需要显式设置,结果如下:
第二种是后端服务器 *** 作,可以直接在response上面进行 *** 作,你可以直接抹掉某个cookie
这个时候回来的response header就不会带default_font这个cookie了
也可以修改已存在的cookie过期时间或者加入新的cookie,nodejs的application可以使用cookie.js
这个时候浏览器就会接受到一个包含cookie为my_cookie=my_value,并且过期时间为一个星期的response。
首先可能有两个问题
注意一下domain和path,必须完全对应可以设置,比如你要修改某一个cookie,修改的时候必须指定与其一样的domain和path才可以生效,否者不生效,另外,当前域不可以写其他域的cookie,子域名除外。
既然cookie这么容易修改,毕竟cookie输入个人信息,容易获取,就容易被利用,那么我们自然而然会想到安全性问题,这里我能想到的有四种方式,在 后端服务器 对cookie进行适当的处理,可以提高cookie的安全性:
** 文章所有步骤都是经过实践检验并可行,若有问题,下方请评论。
——END——
作者 : Eason ,专注各种技术、平台、集成,不满现状,喜欢改改改
文章、技术合作
Email : eason.lau02@hotmail.com
关于正确设置Cookies的方法建议
一 在IE的"工具/Internet选项"的"常规"选项卡中,选择"设置/查看文件",查看所有保存到你电脑里的Cookies。这些文件通常是以 user@domain格式命名的(user是你的本地用户名,domain是所访问的网站的域名。)如果你使用NetsCape浏览器,应该就存放在"C: /PROGRAMFILES/NETS- CAPE/USERS/"里面,与IE不同的是,NETSCAPE是使用一个Cookie文件记录所有网站的Cookies。
二 打开"工具/Internet选项"中的"隐私"选项卡,调整Cookie的安全级别。
通常情况,可以调整到"中高"或者"高"的位置。
多数的论坛站点需要使用Cookie信息,如果你从来不去这些地方,可以将安全级调到"阻止所有Cookies"
如果只是为了禁止个别网站的Cookie,可以单击"编辑 "按钮,将要屏蔽的网站添加到列表中。
在"高级"按钮选项中,你可以对第一方Cookie和第三方的Cookie进行设置,第一方Cookie是你正在浏览的网站的Cookie,第三方Cookie是非正在浏览的网站发给你的Cookie,通常要对第三方Cookie选择"拒绝"。
你如果需要保存 Cookie,可以使用IE的"导入导出"功能,打开"文件/导入导出",按提示 *** 作即可。
祝您愉快!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)