Cookie和Session详解
1.什么是Cookie
Cookie是存放在客户端浏览器的Name/Value键值对,访问服务器时,会自动传递给服务器。
Cookie的生成方式有两种,服务器写入,客户端写入。

2.Cookie的分类
会话Cookie:保存在浏览器内存中,关闭浏览器,Cookie便被销毁了。
普通Cookie:保存在硬盘上,设置了过期时间,过期后销毁。

3.Cookie的特点
http协议是无状态的,即每次请求间独立,不记录每次请求参数信息。
Cookie可以在同一域名的不同页面间传递信息
Cookie会传递给服务器,不管这些参数服务器是否需要。
cookie是和域名对应的,不同域名间的cookie不能相互访问。

4.Cookie的典型应用
很多网站登录时,都有记住密码功能,实际上是把登录用户信息,写入cookie,这样每次登录不需要重新输入,
判断Cookie值存在,则直接登录。
这里有个疑问,能否在cookie中增加用户信息,伪造成登录状态?这里涉及到cookie欺骗的问题,直接在客户端浏览器是无法修改的,
因为cookie只允许对应的域名访问,修改。

5.什么是Session
与Cookie不同,Cookie存放在客户端浏览器或硬盘,而Session存放在服务器端。
客户端浏览器第一次访问服务端时,服务端会返回一个唯一的ID(Sessionid),给客户端,来作为这次客户端和服务端连接会话的唯一标志。
这个Sessionid会被客户端以Cookie的方式存放在浏览器的内存中,当浏览器关闭时,这次会话就结束了,客户端Sessionid值销毁了。
再次访问,会产生一个新的Sessionid。服务端旧的Session并不随客户端Sessionid变化,会一直存在,当到达有效期以后,服务端旧的Session才会销毁。

6.Session的特点,以及和Cookie的区别
Session是放在服务端的,减少了客户端数据的传输。
Session较Cookie来说,不存在Cookie欺骗,相对更加安全。
Session放在服务端,当访问较多,会比较占用服务器的性能,此时应考虑使用Cookie
重要信息放在Session中,普通信息放Cookie
Session和Cookie都可以用于登录验证,对Session来说,当浏览器关闭或者Session失效后,再次访问Sessionid会变更,因此需要重新登录;而Cookie在设置的有效期结束后,需要重新登录。

7.sessionStorage,localStorage和Cookie的区别
sessionStorage,localStorage,Cookie都放在客户端浏览器,区别在于
sessionStorage,localStorage存放的参数,不会主动传递给服务器端,解决了无用参数传递的问题。
sessionStorage和localStorage比较,sessionStorage存放在浏览器内存,关闭浏览器后就销毁了;localStorage存放在硬盘,到达有效期后销毁。

cookie,session,localStage,sessionStage区别的更多相关文章

  1. Django2.2 会话技术cookie session token的区别以及实例介绍

    一.区别: 本人见解:使用自定义数据项进行加密,作为唯一身份识别,登陆时写入cookie(session基于这个).在显示相关数据 1.cookie 属于客户端会话技术(数据存储在客户端) 默认的Co ...

  2. cookie session localstorage sessionStorage区别

    cookie:http://www.cnblogs.com/Darren_code/archive/2011/11/24/Cookie.html 重要特点: 1.cookie 有大小设置,有过期时间设 ...

  3. Servlet学习笔记(1)--第一个servlet&&三种状态对象(cookie,session,application)&&Servlet的生命周期

    servlet的404错误困扰了两天,各种方法都试过了,翻书逛论坛终于把问题解决了,写此博客来纪念自己的第一个servlet经历. 下面我会将自己的编写第一个servlet的详细过程提供给初学者,大神 ...

  4. Java cookie和session介绍与区别

    一.cookie机制和session机制的区别 具体来说cookie机制采用的是在客户端保持状态的方案,而session机制采用的是在服务器端保持状态的方案. 同时我们也看到,由于才服务器端保持状态的 ...

  5. Asp.net 服务器Application,Session,Cookie,ViewState和Cache区别

    2.8 Context 的使用Context 对象包含与当前页面相关的信息,提供对整个上下文的访问,包括请求.响应.以及上文中的Session 和Application 等信息.可以使用此对象在网页之 ...

  6. Cookie和Session简介与区别

    1.Cookie和Session简介与区别 在非常多时候,我们需要跟踪浏览者在整个网站的活动,对他们身份进行自动或半自动的识别(也就是平时常说的网站登陆之类的功能),这时候,我们常采用Cookie与 ...

  7. cookie机制和session机制的区别(面试题)

    一.cookie机制和session机制的区别 具体来说cookie机制采用的是在客户端保持状态的方案,而session机制采用的是在服务器端保持状态的方案. 同时我们也看到,由于才服务器端保持状态的 ...

  8. POPTEST老李分享session,cookie的安全性以及区别 1

    POPTEST老李分享session,cookie的安全性以及区别   poptest是国内唯一一家培养测试开发工程师的培训机构,以学员能胜任自动化测试,性能测试,测试工具开发等工作为目标.如果对课程 ...

  9. 浅谈session,cookie,sessionStorage,localStorage的区别及应用场景

    浏览器的缓存机制提供了可以将用户数据存储在客户端上的方式,可以利用cookie,session等跟服务端进行数据交互. 一.cookie和session cookie和session都是用来跟踪浏览器 ...

随机推荐

  1. Nodejs安装使用,以及不错的Nodejs或者JS资料整理

    先按照这个教程来学习:Node.js教程 - 菜鸟教程网 在mac上使用brew安装了nodejs,中间还是用到了先下载到cache目录的方法. 但是后来发现这样按照的node,没有安装npm. 找到 ...

  2. Reservoir Sampling - 蓄水池抽样算法&&及相关等概率问题

    蓄水池抽样——<编程珠玑>读书笔记 382. Linked List Random Node 398. Random Pick Index 从n个数中随机选取m个 等概率随机函数面试题总结 ...

  3. 9个实用的Javascript代码高亮脚本

    代码高亮很有用,特别是在需要在网站或者blog中显示自己编写的代码的时候,或者给其他人查看或调试语法错误的时候.我们可以将代码高亮,以便阅读者可以十分方便的读取代码块,增加用户阅读代码的良好体验. 目 ...

  4. MapReduce API 基本概念

    在正式分析新旧 API 之前, 先要介绍几个基本概念. 这些概念贯穿于所有 API 之中,因此, 有必要单独讲解. 1.序列化 序列化是指将结构化对象转为字节流以便于通过网络进行传输或写入持久存储的过 ...

  5. phpstorm failed to create jvm:error code -6 解决办法 解决方法

    phpStorm 软件打开运行提示 failed to create JVM的解决办法. 修改文件 D:\Program Files (x86)\JetBrains\PhpStorm 7.1.3\bi ...

  6. [AngularJS] Angular 1.3 Anuglar hint

    Read More: http://www.linkplugapp.com/a/953215 https://docs.google.com/document/d/1XXMvReO8-Awi1EZXA ...

  7. 在centOS上安装VNC

    步骤如下: 1.搜寻VNC Server [root@msg45 wasliberty]# yum search tigervnc-serverLoaded plugins: fastestmirro ...

  8. 数据库:mongodb与关系型数据库相比的优缺点zz (转)

    与关系型数据库相比,MongoDB的优点:①弱一致性(最终一致),更能保证用户的访问速度:举例来说,在传统的关系型数据库中,一个COUNT类型的操作会锁定数据集,这样可以保证得到“当前”情况下的精确值 ...

  9. Linux ${} 变量内容的提取和替换功能等

    [root@localhost log]# var=/dir1/dir2/file.txt 1.对变量取值 [root@localhost log]# echo ${var} /dir1/dir2/f ...

  10. 一种Android数据请求框架

    大部分Android应用一般都涉及到跟server的交互,除非是某些单机应用.既然要跟server打交道,向server请求数据差点儿是必做的事情,或许每家的APP都有一套自己的详细实现逻辑.但我们还 ...