cookie解析

Posted smartmsl

tags:

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

参考:https://www.runoob.com/js/js-cookies.html

Cookie 是一些数据, 存储于你电脑上的文本文件中,用于存储用户的访问记录

当 web 服务器向浏览器发送 web 页面时,在连接关闭后,服务端不会记录用户的信息。

Cookie 的作用就是用于解决 "如何记录客户端的用户信息":

  • 当用户访问 web 页面时,他的名字可以记录在 cookie 中。
  • 在用户下一次访问该页面时,可以在 cookie 中读取用户访问记录。

1、存储方式:键值对

  例如:

username=John Doe

当浏览器从服务器上请求 web 页面时, 属于该页面的 cookie 会被添加到该请求中。服务端通过这种方式来获取用户的信息。

默认情况下,cookie 在浏览器关闭时删除

2、javascript添加Cookie

  加入cookie内容

document.cookie="username=John Doe";

  加入Cookie过期的时间,一旦过期,下次就需要重新输入表单存储cookie

document.cookie="username=John Doe; expires=Thu, 18 Dec 2043 12:00:00 GMT";

  加入使用cookie的页面

document.cookie="username=John Doe; expires=Thu, 18 Dec 2043 12:00:00 GMT; path=/";  # 此时使用的是GMT时间格式,UTC也可以

  当需要再cookie中输入多个键值对,使用“;”隔开。

3、读取cookie

document.cookie;

  document.cookie 将以字符串的方式返回所有的 cookie,类型格式: cookie1=value; cookie2=value; cookie3=value;

4、修改cookie

document.cookie="username=John Smith; expires=Thu, 18 Dec 2043 12:00:00 GMT; path=/";

  直接覆盖旧的值,完成修改。

5、删除cookie

document.cookie = "username=; expires=Thu, 01 Jan 1970 00:00:00 GMT";

  expires设置之前的时间,截止的时间过期了,cookie删除。cookie的值没有必要指定

实例:

function setCookie(cname,cvalue,exdays)

  var d = new Date();                  # 获取当前时间对象
  d.setTime(d.getTime()+(exdays*24*60*60*1000));  # d.getTime()获取当前时间,exdays*24*60*1000转化为毫秒值,然后将新的时间设置为d的时间
  var expires = "expires="+d.toGMTString();     # d.toGMTString以GMT的显示形式输出时间。
  document.cookie = cname + "=" + cvalue + "; " + expires;

  cname是键的名字,cvalue是对应键的值。exdays指该cookie存活几天。

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

片段(Java) | 机试题+算法思路+考点+代码解析 2023

无法解析片段中的 findViewById [重复]

无法解析片段中的 ViewModelProvider 构造?

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

Relay.js 没有正确解析组合片段

Android 逆向使用 Python 解析 ELF 文件 ( Capstone 反汇编 ELF 文件中的机器码数据 | 创建反汇编解析器实例对象 | 设置汇编解析器显示细节 )(代码片段