什么是会话?

  会话指的是浏览器与服务器之间的数据交互。所白了就是 浏览器和服务器进行的请求和响应。

  http协议是无状态的,多次请求之间没有关联性

  

cookie和session的作用?干啥的?

  利用cookie和session可以进行会话保持, 会话保持就是指: 保持用户的登录状态,服务器记录了用户的登录信息,下一次访问服务器就认识该用户了

关于cookie

    cookie是浏览器中储存数据的容器,大小为 4k

    cookie中的数据会在请求时,进行携带

    cookie默认是会话级别的,一旦关闭浏览器cookie就会被销毁

    cookie里面可以存储sessionid

    多页面共享(在同一个浏览器中)

    

常见的一些面试问题

 1 cookie是浏览器中存储数据的容器,为什么服务器中可以获取cookie中的数据?

    因为cookie在向服务器请求时,会将cookie中的数据携带在请求头中;服务器可以读取请求头中的内容,从而间接的获取cookie中的数据。(cookie中的数据被放在请求头中,发送到服务器)

2   cookie是浏览器中存储数据的容器,为什么服务器可以设置cookie中的数据? 

    服务器是无法直接修改cookie的,但是可以通过响应头来设置;setcookie设置的是响应头;set-cookie:'值' ,将来通知浏览器进行设置cookie.

关于session

    session是服务器端储存数据的容器,每个用户都有自己的session空间

session机制

    01 如果用户是第一次访问服务器,会自动生成一个sessionid,这个sessionid是一个随机字符串;

    02 根据sessionid,服务器就会为该用户开启一块session存储空间(会真的创建一个session文件,这个文件的名字就是sessionid,可以用来存储数据)

    03 通过响应头,将sessionid传递回浏览器,设置在cookie中

    04 第二次访问,cookie里面存储的数据会在请求时携带在请求头中,把sessionid携带着

    05 服务器根据sessionid就可以找到对应的session的文件,就认识这个用户了。

sessionStorage

    浏览器中存储数据的容器, 5M

    会话级别的,一关闭浏览器就销毁

    多窗口之间不能共享

    不携带

localStorage

    浏览器中存储数据的容器,5M       IE只有1M左右

    永久存储,只要用户不手动删除,一直存在

    多窗口可以共享

    不携带

  <script>
1. localStorage的api
(1) 设置:localStorage.setItem(key , value)
(2) 获取:localStorage.getItem( key )
(3) 删除:localStorage.removeItem( key )
(4) 清空所有:localStorage.clear() 慎用,会将所有清除
注意:
01 localStorage只能存储 字符串类型 的数据,读出来的数据 都是字符串
02 localStorage储存复杂数据类型
(1)储存, obj=> jsonStr 将对象转换成有格式的json字符串
JSON.stringify( obj/arry) 将复杂数据类型转成json格式的字符串
localStorage.setItem(key , value)存储 (2)获取, jsonStr=> obj
localStorage.getItem( key )
获取到的是json字符串,需要转换成js中的数组或对象
JSON.parse( jsonStr )
</script>

    

 

    

cookie session sessionStorage localStorage的更多相关文章

  1. Cookie、session和localStorage、以及sessionStorage之间的区别

    一.Cookie.session和localStorage的区别 cookie的内容主要包括:名字.值.过期时间.路径和域.路径与域一起构成cookie的作用范围.若不设置时间,则表示这个cookie ...

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

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

  3. session,cookie,sessionStorage,localStorage的区别及应用场景

    session,cookie,sessionStorage,localStorage的区别及应用场景 浏览器的缓存机制提供了可以将用户数据存储在客户端上的方式,可以利用cookie,session等跟 ...

  4. session,cookie,sessionStorage,localStorage的区别

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

  5. 缓存session,cookie,sessionStorage,localStorage的区别

    https://www.cnblogs.com/cencenyue/p/7604651.html(copy) 浅谈session,cookie,sessionStorage,localStorage的 ...

  6. [转] 浅谈session,cookie,sessionStorage,localStorage的区别及应用场景

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

  7. 6.cookie、session,localStorage、sessionStorage

    必须在服务器下运行 cookie/session 存东西 cookie 时间 过期时间 4k 服务器把一部分数据保存在客户端(浏览器) session 回话 时间 服务器存取用户信息 5M local ...

  8. cookie session localstorage sessionStorage区别

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

  9. session,cookie,sessionStorage,localStorage的相关设置以及获取删除

    一.cookie 什么是 Cookie? "cookie 是存储于访问者的计算机中的变量.每当同一台计算机通过浏览器请求某个页面时,就会发送这个 cookie.你可以使用 JavaScrip ...

随机推荐

  1. 微信小程序全局变量改变监听

    问题来源 最近工作需要写小程序页面,其中有个页面情况为:父页面中包含了一个组件页面,组件页面中又包含了另外一个组件页面.需求为:点击最后一个组件页面中的一个view,需要显示最外层父页面中的一个弹出层 ...

  2. 基于C#的机器学习--深层信念网络

    我们都听说过深度学习,但是有多少人知道深度信念网络是什么?让我们从本章开始回答这个问题.深度信念网络是一种非常先进的机器学习形式,其意义正在迅速演变.作为一名机器学习开发人员,对这个概念有一定的了解是 ...

  3. VUE-CLI3.0安装和使用echart方法

    在Vue中使用echarts的两种方式 npm webpack vue-cli echarts vue.js   准备:使用vue-cli脚手架 如果你已经有自己的项目,可以跳过这一步. npm下载v ...

  4. c++学习书籍推荐《超越C++标准库:Boost库导论》下载

    <超越C++标准库Boost库导论>不仅介绍了Boost库的功能.使用方法及注意事项,而且还深入讨论了Boost库的设计理念.解决问题的思想和技巧以及待处理的问题.因此,本书是一本了解Bo ...

  5. Char.Js 学习使用

    <script src="../js/Chart.js"></script> <div " style="float:left;& ...

  6. MDX查询SSAS结果--通过adomd.net展示到客户端

    SSAS多维模型建好之后,除了在excel客户端直接链接ssas源拖拽pivot分析使用外,还可以讲要展示的结果集通过MDX语句查询出来,嵌入到程序中,通过运行程序跑出完整的报表.如图所示:

  7. BI之路学习笔记2--SSIS/ETL设计练习三:《DB->定期生成excel表》

    上次笔记记到,用sql任务给参数赋值,映射到变量,然后把数据流任务放到序列容器中进行执行,可以定期生成excel, 现在的问题是: 在EXCEL目标编辑过程中,必须选定某一个特定的excel目标,这样 ...

  8. Pascal到c++,求大佬翻译!

    请大佬翻译完毕后私信我谢谢! var a,b,c,d,f:array[1..1000]of longint; i,j,k,n,m,o:longint; procedure zx(p,q:longint ...

  9. RabbitMQ 从入门到精通(二)

    目录 1. 消息如何保障百分之百的投递成功? 1.1 方案一:消息落库,对消息状态进行打标 1.2 方案二:消息的延迟投递,做二次确认,回调检查 2. 幂等性 2.1 幂等性是什么? 2.2 消息端幂 ...

  10. Excel催化剂开源第5波-任务窗格在OFFICE2013中新建文档不能同步显示问题解决

    在OFFICE2013及之后,使用了单文档界面技术,不同于以往版本可以共享任务空格.功能区.所以当开发任务窗格时,需要考虑到每一个工作薄都关联一个任务窗格. 背景介绍 单文档界面摘录官方定义如下:对 ...