面试题:什么是cookie和session?

简介: 面试题:什么是cookie和session?

面试题:什么是cookie和session

Cookie 和 Session 是两种常见的 Web 认证和状态管理方式,它们分别是客户端存储和服务器端存储数据的解决方案。

Cookie:

Cookie 通俗的说就是小甜点,是一种文本文件,由 web 服务器存储在客户端(如浏览器)上。网站可以通过在 HTTP 响应报文中添加 Set-Cookie 头信息来告知浏览器需要存储的 cookie 内容,之后浏览器会自动将对应的 cookie 存储在用户的本地计算机上。

Cookie 的作用主要有以下几点:

  • 在客户端保存用户身份信息,实现用户认证
  • 统计网站访问量和广告点击率等数据

Session:

Session 是一种在服务器端存储的用于跟踪会话的机制,实际上也是一种 Cookie。与 Cookie 不同的是,Session 数据不会暴露在客户端,而是存放在服务器端。我们可以将 Session 看作是一个容器,用于存储用户的登录信息、购物车信息以及需持续跟踪的其他相关信息。

Session 工作流程如下:

  1. 客户端向服务器发送请求。
  2. 服务器根据请求判断是否存在 Session ID,如果不存在,则为客户端创建一个;如果存在,则验证该号码是否有效。
  3. 服务器返回响应结果给客户端,并在 Response Header 中写入 Set-Cookie 响应头信息,将 Session ID(存在cookie中的) 发送给客户端。
  4. 客户端之后的每次请求都会在 Cookie 栏中携带此 Session ID。
  5. 服务器通过此 Session ID 找到对应需要的数据进行处理。

Session 的特点主要包括以下几个方面:

  • 由于存储在服务器上,因此相对安全
  • 能够存储较大且不敏感的信息

总之,Cookie 和 Session 都是常见的 Web 认证和状态管理方式,在具体使用时需注意其安全性和有效期限,以保证服务的正常运行。

相关文章
|
2月前
|
存储 编解码 应用服务中间件
会话跟踪技术(Session 以及Cookie)
会话跟踪技术(Session 以及Cookie)
|
6天前
|
存储 NoSQL Java
一天五道Java面试题----第十一天(分布式架构下,Session共享有什么方案--------->分布式事务解决方案)
这篇文章是关于Java面试中的分布式架构问题的笔记,包括分布式架构下的Session共享方案、RPC和RMI的理解、分布式ID生成方案、分布式锁解决方案以及分布式事务解决方案。
一天五道Java面试题----第十一天(分布式架构下,Session共享有什么方案--------->分布式事务解决方案)
|
7天前
|
存储 JSON JavaScript
震撼!Cookie、Session、Token、JWT 终极对决:揭开 Web 认证的神秘面纱!
【8月更文挑战第13天】Web 开发中,Cookie、Session、Token 和 JWT 常混淆。Cookie 是服务器给客户端的小信息片,如登录状态,每次请求都会返回。Session 则是服务器存储的用户数据,通过 Session ID 追踪。Token 类似通行证,证明客户端身份且可加密。JWT 是结构化的 Token,含头部、载荷及签名,确保数据完整性和安全性。
19 4
|
22天前
|
存储 安全 搜索推荐
Cookie和Session的区别,99%的程序员都不知道的细节!
大家好,我是小米,在Web开发中,Cookie和Session是两种重要的状态管理工具。它们有着不同的存储位置、安全性和应用场景。本篇文章将详细解析它们的区别和应用,让你在开发过程中能够更加游刃有余。让我们一起深入了解吧!
37 1
|
8天前
Error unprotecting the session cookie.The key {...} was not found in the key ring.
Error unprotecting the session cookie.The key {...} was not found in the key ring.
18 0
|
8天前
Error unprotecting the session cookie.The payload was invalid.
Error unprotecting the session cookie.The payload was invalid.
23 0
|
2月前
|
存储 前端开发 JavaScript
VSCode调试揭秘:Live Server助力完美测试Cookie与Session,远超“Open in Browser“!
VSCode调试揭秘:Live Server助力完美测试Cookie与Session,远超“Open in Browser“!
|
2月前
|
存储 安全 网络协议
Django路由与会话深度探索:静态、动态路由分发,以及Cookie与Session的奥秘
Django路由与会话深度探索:静态、动态路由分发,以及Cookie与Session的奥秘
|
2月前
|
存储 移动开发 JavaScript
对于session、cookie、 localStorage和SessionStorage的理解
对于session、cookie、 localStorage和SessionStorage的理解
41 0
|
2月前
|
存储 安全 关系型数据库
安全开发-PHP应用&留言板功能&超全局变量&数据库操作&第三方插件引用&后台模块&Session&Cookie&Token&身份验证&唯一性
安全开发-PHP应用&留言板功能&超全局变量&数据库操作&第三方插件引用&后台模块&Session&Cookie&Token&身份验证&唯一性