我对sessionid的理解
不知道是不是扯蛋,还是太菜...
看上面的的话毫不关系是吧...
自己看过一点 关于 说session id 的 一些文章, 貌似都是一样的...。
以下内容个人理解, 请大家指正...
我想自己举个例子
大家想,人与人之间说话交流, 辨别你是小明还是小红。 第一点 可能就是 外表(光),第二点就是说话的音色(空气)。上面的实例说明了一件基本事实, 两个不同个体之间,判别对方,需要通过 至少一种凭据 和 必备的媒介(例如光、空气)。由此 可以想到 浏览器 与 服务端也是需要一种凭据 和 媒介。
浏览器端与服务端的情事
最早之前服务器与浏览器之间相互。一次请求之后就 结束了,不会保存这个请求的信息。这带来很多不便(调用其他接口都要带着用户登陆信息),因此某位 大神 就提出一个方案... cookie
cookie(媒介)
cookie可以持久的保存在浏览器端,cookie可以设置过期时间、路径...等等
同时 cookie 也可也伴随 http 从 浏览器端 发送到 服务端, 相反的服务端也以把 cookie 信息发送到浏览器端。
此时再想一想登陆逻辑, 用户A登陆, 服务端一般会把登陆信息存起来(可以把信息存在 文件里,或存在内存里等等),然后派发出一个加密唯一的 sessionid 来 对应a 用户信息( sessionid ---> a 的登陆信息。)最后服务端通过操作响应头 ,把 sessionid 这个值 通过 cookie 的形式,传输到浏览器端.浏览器端 一般就会保存cookie。 当用户再访问 该服务端的 链接时,都会带着sessionid(随着cookie 传到后端)。 然后服务端 就凭借这个 sessionid 来查看用户的信息,判断当前谁登陆了,是不是登陆状态。
图鉴(自己用koa写的简单后台接口)ccookie 随http 请求 传输 证名:
我对sessionid的理解的更多相关文章
- 理解Session与Cookie
写在前面的话:Session和Cookie是非常有意思的两个概念,对于两者的管理可以处理的很复杂,但是无论如何,理解Session和Cookie的基本概念和发明初衷,对于问题的解决,大有裨益. === ...
- 理解Docker(3):Docker 使用 Linux namespace 隔离容器的运行环境
本系列文章将介绍Docker的有关知识: (1)Docker 安装及基本用法 (2)Docker 镜像 (3)Docker 容器的隔离性 - 使用 Linux namespace 隔离容器的运行环境 ...
- [转载]深入理解HTTP Session
深入理解HTTP Session session在web开发中是一个非常重要的概念,这个概念很抽象,很难定义,也是最让人迷惑的一个名词,也是最多被滥用的名字之一,在不同的场合,session一次的 ...
- 深入理解http/https协议
深入理解HTTP协议(转) http协议学习系列 1. 基础概念篇 1.1 介绍 HTTP是Hyper Text Transfer Protocol(超文本传输协议)的缩写.它的发展是万维网协会(Wo ...
- 对LR关联的一些理解
从接触LR关联的迷茫,到现在略有感悟,小记期间的一些理解. 一开始认识关联是在LR自带学习例子,需要关联session,也知道了自动关联,手动关联以及边录制边关联. 在使用关联的过程中,也学习了web ...
- 转载和积累系列 - 深入理解HTTP协议
深入理解HTTP协议 1. 基础概念篇 1.1 介绍 HTTP是Hyper Text Transfer Protocol(超文本传输协议)的缩写.它的发展是万维网协会(World Wide Web C ...
- cookie&&session再理解笔记
就拿php来说,两个php页面之间不拿get,post传递变量的话,数据是不能共享的.访问完1.php页面该页面的变量就被销毁了.所以就拿学校食堂来说,拿现金买饭的话你交完钱后,他给你个票以便确认你, ...
- C#中的特性基本理解
定制特性可以应用的目标元素可以为:程序集(assembly).模块(module).类型(type).属性(property).事件(event).字段(field).方法(method).参数(pa ...
- 全面理解HTTP
URL与URI 我们经常接触到的就是URL了,它就是我们访问web的一个字符串地址,那么URI是什么呢?他们是什么关系呢? URL:uniform resource location 统一资源定位符U ...
随机推荐
- python--一些知识点
一. ==和is的区别 1. ==意为左右两端的值是否相等 2. is意为,左边是否就是右边,python会检测左右两边的引用位置,相等才是True(注:一定范围内的数字,左右两边为True) 二. ...
- ECSHOP数据表结构完整仔细说明教程 (http://www.ecshop119.com/ecshopjc-868.html)
s_account_log //用户账目日志表 字段 类型 Null 默认 注释 log_id mediumint(8) 否 自增ID号 user_id mediumint(8) 否 用户登录 ...
- 玩转redis-延时消息队列
上一篇基于redis的list实现了一个简单的消息队列:玩转redis-简单消息队列 源码地址 使用demo 产品经理经常说的一句话,我们不光要有X功能,还要Y功能,这样客户才能更满意.同样的,只有简 ...
- 手动搭建I/O网络通信框架3:NIO编程模型,升级改造聊天室
第一章:手动搭建I/O网络通信框架1:Socket和ServerSocket入门实战,实现单聊 第二章:手动搭建I/O网络通信框架2:BIO编程模型实现群聊 在第二章中用BIO编程模型,简单的实现了一 ...
- go 反射包
一.什么是反射? 反射是用程序检查其所拥有的结构,尤其是类型的一种能力: 二.Printf Printf 的函数声明为: func Printf(format string, args ... int ...
- JAVA中String和StringBuilder类的特点及使用
转自:https://www.imooc.com/code/2202 仅做个人学习记录之用,侵删! 什么是 Java 中的字符串 在 Java 中,字符串被作为 String 类型的对象处理. Str ...
- 31.2 try finally使用
package day31_exception; import java.io.FileWriter; import java.io.IOException; import java.lang.Exc ...
- 手动搭建I/O网络通信框架4:AIO编程模型,聊天室终极改造
第一章:手动搭建I/O网络通信框架1:Socket和ServerSocket入门实战,实现单聊 第二章:手动搭建I/O网络通信框架2:BIO编程模型实现群聊 第三章:手动搭建I/O网络通信框架3:NI ...
- c++存储区
全局变量与静态变量区.常量区.局部变量区(栈).动态存储区(堆).自由存储区 1.全局变量与静态变量区->存放全局变量.静态变量,程序运行结束后释放 2.常量区->存放常量 3.局部变量区 ...
- java 中类为啥要序列化
java里为什么要序列化?http://zhidao.baidu.com/link?url=7_wAQ8eAl28vcJPE5OKM5Y0Bo4aINNQokHhRmI9XPszEoTO5QF-gNb ...