文档章节

Cookie和Session

张亦Miki
 张亦Miki
发布于 2016/10/09 11:36
字数 666
阅读 4
收藏 0
点赞 0
评论 0
  • 由于HTTP协议是无状态的协议,所以服务端需要记录用户的状态时,就需要用某种机制来识具体的用户,这个机制就是Session. 典型的场景比如购物车,当你点击下单按钮时,

    由于HTTP协议无状态, 所以并不知道是哪个用户操作的,所以服务端要为特定的用户创建了特定的Session,用于标识这个用户,并且跟踪用户,这样才知道购物车里面有几本书。

    这个Session是保存在服务端的,有一个唯一标识。在服务端保存Session的方法很多,内存、数据库、文件都有。集群的时候也要考虑Session的转移,在大型的网站,

    一般会有专门的Session服务器集群,用来保存用户会话,这个时候 Session 信息都是放在内存的,使用一些缓存服务比如Memcached之类的来放 Session

  • 思考一下服务端如何识别特定的客户?这个时候Cookie就登场了。每次HTTP请求的时候,客户端都会发送相应的Cookie信息到服务端。实际上大多数的应用都是用 Cookie 来实现

    Session跟踪的,第一次创建Session的时候,服务端会在HTTP协议中告诉客户端,需要在 Cookie 里面记录一个Session ID,以后每次请求把这个会话ID发送到服务器,

    我就知道你是谁了。有人问,如果客户端的浏览器禁用了 Cookie 怎么办?一般这种情况下,会使用一种叫做URL重写的技术来进行会话跟踪,即每次HTTP交互,URL后面都会被附加上

    一个诸如 sid=xxxxx 这样的参数,服务端据此来识别用户。

  • Cookie其实还可以用在一些方便用户的场景下,设想你某次登陆过一个网站,下次登录的时候不想再次输入账号了,怎么办?这个信息可以写到Cookie里面,访问网站的时候,

    网站页面的脚本可以读取这个信息,就自动帮你把用户名给填了,能够方便一下用户。这也是Cookie名称的由来,给用户的一点甜头。

  • 所以,总结一下:Session是在服务端保存的一个数据结构,用来跟踪用户的状态,这个数据可以保存在集群、数据库、文件中;Cookie是客户端保存用户信息的一种机制,

    用来记录用户的一些信息,也是实现Session的一种方式。

© 著作权归作者所有

共有 人打赏支持
张亦Miki
粉丝 0
博文 1
码字总数 666
作品 0
崇明
程序员
python3-django session支持-缓存+数据库Session或cookies加密

  缓存+数据库Session      配置settings.py   SESSIONENGINE='django.contrib.sessions.backends.cacheddb'#引擎   SESSIONCACHEALIAS='default'#使用的缓存别名(默认内存缓存,...

运维菜 ⋅ 03/15 ⋅ 0

yii get post cookie session

获取GET/POST过来的数据 Yii::app()->request->getParam('id'); # $GET['id'] or $POST['id'] session/cookie $_SESSION 等价于 Yii::app()->session; //启动session $session=new CHttpSes......

rooney ⋅ 2014/07/29 ⋅ 0

Cookie和Session

Cookie和Session: 一.Cookie: 创建Cookie: Cookie c = new Cookie(String name,String value) 设置Cookie的生存时间:未设置时间它存到浏览器内存中,设置时间后它存到硬盘上,到达这个时间时浏...

Romanceling ⋅ 2016/05/24 ⋅ 0

彻底明白php的session机制

1.session.save_handler = files * 1. session_start() 1). session_start()是session机制的开始,它有一定概率开启垃圾回收,因为session是存放在文件中, PHP自身的垃圾回收是无效的,SES...

雍雍_yoyo ⋅ 2013/08/22 ⋅ 5

完全跨域单点登录解决方案[php+redis+p3p协议]

技术要点:COOKIE跨域 + SESSION共享 cookie跨域:让不同域下的session cookie有着同样的session id session共享:同一会话系统,客户端不同域下的session id相同故可访问相同的会话状态 完全...

big_cat ⋅ 2015/11/11 ⋅ 0

cookie与session区别及用法

cookie与session 区别 下面是cookie与session各自的特点,其实通过它们特点的不同就能看出他们的区别,我就不总结区别了,可以将他们的特性进行比较,不同之处就是他们的区别。 cookie特性 ...

马大哈tt ⋅ 2017/11/21 ⋅ 0

Servlet技术 - Cookie与Session

Cookie与Session 会话使用 使用场景 * 偏好记录 * 自动登录 * 浏览记录 原理 * 客户端或者服务端保存用户数据 Cookie与Session Cookie 会话数据保存在浏览器客户端 Session 会话数据保存在服...

抢小孩糖吃 ⋅ 2016/09/03 ⋅ 0

会话控制

会话控制 一、cookie 作用 a) 记录浏览信息 b) 用户信息 c) 登录信息 二、COOKIE 使用方式 setcookie 设置cookie函数 第一个参数: cookie名字 第二个参数cookie值 第三个参数 cookie过期时间...

方花 ⋅ 2017/11/14 ⋅ 0

JavaEE细节问题05——Cookie和Session

Cookie和Session的作用: 都是用于存储一些关键数据。 Cookie和Session的存储位置: Cookie储存在客户端,Session储存在服务器 Cookie的产生和销毁以及原理: Cookie由服务器产生,通过HTTP协...

Lunqi ⋅ 2015/08/17 ⋅ 7

浅谈 Cookie 与 Session 的区别

1、cookie机制 Cookies是服务器在本地机器上存储的小段文本并随每一个请求发送至同一个服务器。IETF RFC 2965 HTTP State Management Mechanism 是通用cookie规范。网络服务器用HTTP头向客户...

xrzs ⋅ 2014/08/20 ⋅ 8

没有更多内容

加载失败,请刷新页面

加载更多

下一页

spring Email

使用spring发Email其实就是使用spring自己封装携带的一个javamail.JavaMailSenderImpl类而已。这个类可以当一个普通的java对象来使用,也可以通过把它配置变成spring Bean的方式然后注入使用...

BobwithB ⋅ 17分钟前 ⋅ 0

spark 整理的一些知识

Spark 知识点 请描述spark RDD原理与特征? RDD全称是resilient distributed dataset(具有弹性的分布式数据集)。一个RDD仅仅是一个分布式的元素集合。在Spark中,所有工作都表示为创建新的...

tuoleisi77 ⋅ 21分钟前 ⋅ 0

思考

时间一天天过感觉自己有在成长吗?最怕的是时光匆匆而过,自己没有收获!下面总结下最近自己的思考。 认识自己 认识另一个自己,人们常说要虚心听取别人意见和建议。然而人往往是很难做到的,...

hello_hp ⋅ 21分钟前 ⋅ 0

IT行业的变革就像世界杯德国对战墨西哥一样难以预测[图]

最近在观看世界杯,尤其是昨天的比赛,上一届卫冕冠军德国队居然0:1告负墨西哥,这创造了历史,首先是墨西哥从来没赢过德国队,其次是德国队36年来首站没输过,再差也是打平,而这次,德国队...

原创小博客 ⋅ 40分钟前 ⋅ 0

解决CentOS6、7,/etc/sysconfig/下没有iptables的问题

一、Centos 6版本解决办法: 1.任意运行一条iptables防火墙规则配置命令: iptables -P OUTPUT ACCEPT 2.对iptables服务进行保存: service iptables save 3.重启iptables服务: service ...

寰宇01 ⋅ 50分钟前 ⋅ 2

数据库备份和恢复

备份:mysqldump -u root -p 数据库>磁盘路径 恢复:mysql -u root -p 数据库<sql脚本的磁盘路径

anlve ⋅ 今天 ⋅ 0

发生了什么?Linus 又发怒了?

在一个 Linux 内核 4.18-rc1 的 Pull Request 中,开发者 Andy Shevchenko 表示其在对设备属性框架进行更新时,移除了 union 别名,这引发了 Linus 的暴怒。 这一次 Linus Torvalds 发怒的原...

问题终结者 ⋅ 今天 ⋅ 0

在树莓派上搭建一个maven仓库

在树莓派上搭建一个maven仓库 20180618 lambo init 项目说明 家里有台树莓派性能太慢。想搭建一个maven私服, 使用nexus或者 jfrog-artifactory 运行的够呛。怎么办呢,手写一个吧.所在这个...

林小宝 ⋅ 今天 ⋅ 0

Spring发展历程总结

转自与 https://www.cnblogs.com/RunForLove/p/4641672.html 目前很多公司的架构,从Struts2迁移到了SpringMVC。你有想过为什么不使用Servlet+JSP来构建Java web项目,而是采用SpringMVC呢?...

onedotdot ⋅ 今天 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部