cookie session token 之间的区别

cookie 和session的区别

1、cookie数据存放在客户的浏览器上,session数据放在服务器上。

2、cookie不是很安全,别人可以分析存放在本地的COOKIE并进行COOKIE欺骗

考虑到安全应当使用session。

3、session会在一定时间内保存在服务器上。当访问增多,会比较占用你服务器的性能

考虑到减轻服务器性能方面,应当使用COOKIE。

4、单个cookie保存的数据不能超过4K,很多浏览器都限制一个站点最多保存20个cookie。

token 和session 的区别

session 和 oauth token并不矛盾,作为身份认证 token安全性比session好,因为每个请求都有签名还能防止监听以及重放攻击,而session就必须靠链路层来保障通讯安全了。如上所说,如果你需要实现有状态的会话,仍然可以增加session来在服务器端保存一些状态

App通常用restful api跟server打交道。Rest是stateless的,也就是app不需要像browser那样用cookie来保存session,因此用session token来标示自己就够了,session/state由api server的逻辑处理。 如果你的后端不是stateless的rest api, 那么你可能需要在app里保存session.可以在app里嵌入webkit,用一个隐藏的browser来管理cookie session.

Session 是一种HTTP存储机制,目的是为无状态的HTTP提供的持久机制。所谓Session 认证只是简单的把User 信息存储到Session 里,因为SID 的不可预测性,暂且认为是安全的。这是一种认证手段。 而Token ,如果指的是OAuth Token 或类似的机制的话,提供的是 认证 和 授权 ,认证是针对用户,授权是针对App 。其目的是让 某App有权利访问 某用户 的信息。这里的 Token是唯一的。不可以转移到其它 App上,也不可以转到其它 用户 上。 转过来说Session 。Session只提供一种简单的认证,即有此 SID,即认为有此 User的全部权利。是需要严格保密的,这个数据应该只保存在站方,不应该共享给其它网站或者第三方App。 所以简单来说,如果你的用户数据可能需要和第三方共享,或者允许第三方调用 API 接口,用 Token 。如果永远只是自己的网站,自己的 App,用什么就无所谓了。

token就是令牌,比如你授权(登录)一个程序时,他就是个依据,判断你是否已经授权该软件;cookie就是写在客户端的一个txt文件,里面包括你登录信息之类的,这样你下次在登录某个网站,就会自动调用cookie自动登录用户名;session和cookie差不多,只是session是写在服务器端的文件,也需要在客户端写入cookie文件,但是文件里是你的浏览器编号.Session的状态是存储在服务器端,客户端只有session id;而Token的状态是存储在客户端。

时间: 2024-11-09 23:58:40

cookie session token 之间的区别的相关文章

Python Web学习笔记之Cookie,Session,Token区别

一.Cookie,Session,Token简介 # 这三者都解决了HTTP协议无状态的问题 session ID or session token is a piece of data that is used in network communications (often over HTTP) to identify a session, a series of related message exchanges. Session identifiers become necessary

cookie,session,token介绍

本文目录 发展史 Cookie Session Token 回到目录 发展史 1.很久很久以前,Web 基本上就是文档的浏览而已, 既然是浏览,作为服务器, 不需要记录谁在某一段时间里都浏览了什么文档,每次请求都是一个新的HTTP协议, 就是请求加响应,  尤其是我不用记住是谁刚刚发了HTTP请求,   每个请求对我来说都是全新的.这段时间很嗨皮 2.但是随着交互式Web应用的兴起,像在线购物网站,需要登录的网站等等,马上就面临一个问题,那就是要管理会话,必须记住哪些人登录系统,  哪些人往自己

Flask中g对象,以及g,session,flash之间的区别

一.g对象的使用 专门用来存储用户信息的g对象,g的全称的为global g对象在一次请求中的所有的代码的地方,都是可以使用的 g对象的使用: 设置:g.变量名= 变量值 获取:g.name 注意:g对象比如说再a路由设置只能再a路由中去到g对象,在b路由汇总没法获得g对象 二.g,session,flash之间的区别 session 只要设置,在任意请求中都能拿到,无论你拿多少次 flash 一旦设置,可在任意一次请求中获取,但是只能取一次 g 在A路由中设置设置,只能在A路由请求中请求中获取

cookie,session,token的定义及区别

参考了很多文章总结的. 1.cookie(储存在用户本地终端上的数据) 服务器生成,发送给浏览器,浏览器保存,下次请求同一网站再发送给服务器. 2.session(会话) a.代表服务器与浏览器的一次会话过程,这个过程是连续的,也可以时断时续的. b.cookie中存放着一个sessionID.请求时会发送这个ID. c.session因为请求(request对象)而产生. d.session是一个容器,可以存放会话过程中的任何对象. e.session的创建和使用总在服务端,而浏览器从来都没得

Cookie && Session && Token

Cookie的由来: HTTP 本身是一个无状态的 request/response 协议. 服务器接收一个来自客户端的request, 处理完以后返回一个response. 但是这个过程中, 服务器几乎没有什么信息可以用来判定是哪个客户端(用户)发来的request, 也无法记录用户的请求顺序. Cookie是目前识别用户,实现持久会话最好的方式.Cookie通常会跟User-Agent,Referer,X-Forwarded-For,JS等技术共同使用,为服务器提供更为详细的信息.简而言之,

Cookie/Session/Token对比

一.Cookie 1. HTTP服务器是无状态的,不会记录上下文 2. Cookie是服务器生成,放在客户端存储 3. 用于识别用户 4. Cookie的安全机制:Max-Age/Domain/HttpOnly/Secure/Path等属性 5. Java中使用Cookie类 二.Session 1. 关键信息(比如账号密码)不能存储在客户端,因为可能被拦截 2. Session把关键内容存储在服务器端的ConcurrentHashMap中,SessionId存储在客户端的Cookie里 3.

Session.Abandon与Session.Clear之间的区别

Session.Clear()就是把Session对象中的所有项目都删除了,Session对象里面什么都没有.但是Session对象还保留. Session.Abandon()就是把当前Session对象删除了,下一次就是新的Session了. 主要的不同之处在于当使用Session.Abandon时,会调用Session_End方法(InProc模式下).当下一个请求到来时将激发Session_Start方法.而Session.Clear只是清除Session中的所有数据并不会中止该Sessi

关于cookie,session和token

一.理解HTTP“无状态”的含义 我们知道,HTTP是一种无状态的协议,客户端与服务器建立连接并传输数据,数据传输完成后,连接就会关闭. 举个栗子,如果在无状态情况下访问淘宝,会出现以下场景: 1)打开淘宝的url,在这一步输入用户名和密码: 2)在首页选择一样商品,点击进去,又提示需要重新登录.因为HTTP是无状态的,虽然在第1步中已经输入了用户名和密码,但我们的客户端不会记住上一步输入的用户名和密码,而服务器也不会记住已登录的状态: 经过上述例子,我们可以把“无状态”理解为:不会对本次会话设

Cookie、token、session的区别是什么?

背景: 最近在总结一些容易理解混淆的概念,之前面试的时候提到过,我觉得也说不清楚,这两天项目做接口测试发现用的cookie而不是之前的token,于是总结一下,便于以后用到的时候再阅读以及分享给需要的人.后期如果发现总结不对会持续更新 从安全性优先级来说: 1.优先级 Cookie<session<token 2. 安全性 Cookie: ①cookie不是很安全,别人可以分析存放在本地的cookie并进行cookie欺骗,考虑到安全应当使用session ②HTTP是一种无状态协议,服务器没