cookie和session一点知识
来源:互联网 发布:mac os 11.12 cdr 编辑:程序博客网 时间:2024/06/05 05:21
Cookie(复数形态Cookies),中文名称为“小型文本文件”或“小甜饼”[1],指某些网站为了辨别用户身份而储存在用户本地终端(Client Side)上的数据(通常经过加密)。
cookie机制
cookie机制采用的是在客户端保持状态的方案。
cookie机制,就是当服务器对访问它的用户生成了一个session的同时服务器通过在HTTP的响应头中加上一行特殊的指示以提示浏览器按照指示生成相应的cookie,保存在客户端,里面记录着用户当前的信息,当用户再次访问服务器时,浏览器检查所有存储的cookie,如果某个cookie所声明的作用范围大于等于将要请求的资源所在的位置也就是对应的Cookie文件,若存在,则把该cookie附在请求资源的HTTP请求头上发送给服务器。
cookie的内容主要包括:名字,值,过期时间,路径和域。
前三个内容比较好理解,不作叙述。
路径就是跟在域名后面的URL路径,比如/
或者/foo
等等,路径与域合在一起就构成了cookie的作用范围。
cookie生命周期
如果不设置过期时间,则表示这个cookie的生命期为浏览器会话期间,只要关闭浏览器窗口,cookie就消失了。这种生命期为浏览器会话期的 cookie被称为会话cookie。会话cookie一般不存储在硬盘上而是保存在内存里,当然这种行为并不是规范规定的。
如果设置了过期时间,浏览器就会把cookie保存到硬盘上,关闭后再次打开浏览器,这些cookie仍然有效直到超过设定的过期时间。
session(百度百科定义)
Session直接翻译成中文比较困难,一般都译成时域。在计算机专业术语中,Session是指一个终端用户与交互系统进行通信的时间间隔,通常指从注册进入系统到注销退出系统之间所经过的时间。以及如果需要的话,可能还有一定的操作空间。
session机制
Session机制采用的是在服务器端保持状态的方案。
当用户访问到一个服务器,服务器就要为该用户创建一个SESSION,在创建这个SESSION的时候,服务器首先检查这个用户发来的请求里是否包含了一个SESSIONID,如果包含了一个SESSIONID则说明之前该用户已经登陆过并为此用户创建过SESSION,那服务器就按照这个 SESSIONID把这个SESSION在服务器的内存中查找出来(如果查找不到,就有可能为他新创建一个),如果客户端请求里不包含有 SESSIONID,则为该客户端创建一个SESSION并生成一个与此SESSION相关的SESSIONID。这个SESSIONID是唯一的、不重复的、不容易找到规律的字符串,这个SESSIONID将被在本次响应中返回到客户端保存,而保存这个SESSIONID的正是COOKIE,这样在交互过程中浏览器可以自动的按照规则把这个标识发送给服务器。
Request请求流程中的cookie和session
Request结束之后的流程
Django中操作cookie和session
1234567891011121314
#设置cookieresponse.set_cookie("cookie_Key", "value", max_age)#获取cookievalue = request.COOKIES["cookie_Key"]#删除cookieresponse.delete_cookie("cookie_Key", path="/", domain=name)#设置sessionrequest.session["session_name"] = "admin"#获取sessionsession_name = request.session["session_name"]#删除sessiondel request.session["session_name"]
设置cookie可传递的可选参数描述:(参考自网络)
- cookie和session一点知识
- Cookie和Session专题知识
- Session 和 Cookie 的知识
- 对session和cookie的一点困惑
- Cookie和Session的小知识
- 关于cookie和session的知识
- Cookie Session 浅知识
- 一点关于cookie的知识
- cookie 和session以及小知识 的区别详解
- Cookie and Session知识理解
- Session与Cookie的一点总结
- session和cookie
- Cookie和Session专题
- Cookie和Session专题
- Cookie和Session专题
- Cookie和Session专题
- 关于Session和Cookie
- Cookie和Session专题
- 微信小程序开发-新闻列表之新闻列表绑定
- vue 模块通信
- 比特币(BitCoin)学习第一天-什么是比特币(BitCoin)?
- 纯css,div隐藏滚动条,保留鼠标滚动效果。
- centos6安装mysql5.7.17
- cookie和session一点知识
- Dcloud离线打包-android-AndroidStudio
- 使用ISO文件制作OpenStack使用的CoreOS镜像
- iOS 雷达图的绘制 贝塞尔曲线的使用UIBezierPath
- HTML元素文本溢出显示省略号(...)
- 网友一个查询dbms_medata.get_ddl 导出索引定义很慢
- python正则表达式
- IOS 把格式化的JSON字符串转换成字典
- Android_使用DatePickerDialog和TimePickerDialog