美文网首页
2019-09-29 cookie、sessionStorage

2019-09-29 cookie、sessionStorage

作者: 枫叶落尽 | 来源:发表于2019-10-01 20:27 被阅读0次

cookie

In fact, cookies are small files which are located on a user’s computer.

存储类型 session
保留时间 浏览器进程结束,cookie如未特别设置,则被清除。
可见范围 同源子目录可见

tips
cookie的默认的domain是当前的网页所在的 location.host ,默认的path 就是当前页面的 location.pathname

web Storage

localStoragesessionStorage 都是Storage类对象(持久化关联数组,索引是字符串,值也是字符串),localStoragesessionStorage 的区别在于存储的保留时间可见范围不同。

特性 localStorage sesionStorage
保留时间 一直保存,直到JavaScript或浏览器主动删除 在会话期间保留(会话期间指浏览器中这个tab未被关闭),页面刷新不受影响
可见范围 同源共享 同源单tab内可用(目录无关)

基于上面的知识,我们来解决一些问题:

  • 1、我想一个网站(同源)共享登录信息,怎么办?
    如果是在根目录的页面负责设置cookie,则不用做任何设置即已经实现。
    如果是在某个子目录下的页面负责设置cookie,则需要在设置cookie时,设置 path“/”

  • 2、我想一个网站群(不同源,子域)共享登录信息,怎么办?
    在设置cookie的页面,设置 domain 为 域名的公共部分,比如
    a.test.comb.test.com 是一个网站群的两个子域,则设置 domain.test.com 即可。
    (注意,domain 可以具体到某个子域,但必须至少包含 二级域名+顶级域名)
    domain说明资料1 domain说明资料2

  • 3、我能不能拿到别的网站的cookie?
    如果不是问题2的情况,不可以。

  • 4、同一个网站(同源),但别的页面设置的path,某个页面不在可以访问cookie的范围内,怎么办?
    找一个能够访问cookie的页面,把它包含在一个iframe中,放在这个想访问cookie的页面里,就可以实现间接访问cookie(获取的是iframe中页面的cookie)。

  • 5、cookie追踪用户,怎么实现?
    参考:
    https://www.cnblogs.com/zhuanzhuanfe/p/8010854.html
    https://www.v2ex.com/amp/t/327997

  • 6、单点登录?
    https://www.cnblogs.com/sueris/p/5674169.html

//资料
视频:讲了什么是cookie、谁能访问cookie、cookie的进化、利用cookie对用户画像

资料:


cookies-vs-local-storage

Local Storage vs Cookies

https://stackoverflow.com/questions/19867599/what-is-the-difference-between-localstorage-sessionstorage-session-and-cookies

实例 - “登陆信息”用cookie存还是localStorage存好?
cookie、sessionStorage、localStorage 详解及应用场景

https://www.youtube.com/watch?v=klLMeL7I4O0

以下截图来自:
https://www.youtube.com/watch?v=2PPSXonhIck
Session流程:

翻译:

1、用户提交登录相关凭证(比如邮箱+密码进行登录)
2、服务器对比数据库中信息验证凭证
3、服务器创建一个临时的用户 `session`
4、服务器发给用户一个cookie,包含了 `session` 的 `ID` (一个唯一标识符,用来标识是哪一个 session )
5、用户在以后的每次请求都会带上 cookie
6、服务器在接收到用户的请求后,根据 会话存储 和 访问权限 对其进行验证(确认是哪一个session,对应的权限有哪些)
7、当用户登出时,服务器销毁 session 。并清除 cookie。

相关文章

网友评论

      本文标题:2019-09-29 cookie、sessionStorage

      本文链接:https://www.haomeiwen.com/subject/rsuxpctx.html