您现在的位置是:首页 > 正文

cookie、session、token

2024-02-01 00:44:05阅读 2
cookie、seesion、token都是为了解决“HTTP是无状态的Web服务器”这个问题,我们需要http记住我们之前的一些数据和操作,来为我们接下来的操作提供条件

cookie、session、token的区别:

  1. cookie:前端应用向后端服务器发送请求,后台服务器在响应内容中添加Set-Cookie字段以键值对的形式,来为前端应用设置cookie,就像为每一位前端贴了一个小纸条。当下一次前端应用再次发送请求的时候,会在请求内容带上设置好cookie,后端服务器读取纸条内容,就会认得你是谁,你是什么状态了。
  2. seesion:使用cookie存储状态信息时,每次发送请求,请求中都会包含cookie信息,一旦请求被拦截,就会造成信息的丢失,为了避免这个问题,seesion的数据信息都存储在服务器端,前端应用只存储对应的seesionId,设置过程跟cookie一样,当初次访问请求时,后端服务器通过响应内容给前端设置seesionId,下次前端再次发起请求,请求中就会带有设置好的seesionId,服务器读取seesionId,找到存储在服务器端的对应的状态信息,然后进行接下来的操作。
  3. token:Token是在服务端将用户信息经过Base64Url编码过后传给在客户端,每次用户请求的时候都会带上这一段信息,因此服务端拿到此信息进行解密后就知道此用户是谁了,这个方法叫做JWT(Json Web Token)。

网站文章

  • 浏览器指纹js代码实现重写(WebRtc,WebGl,Rect,Audio)

    浏览器指纹js代码实现重写(WebRtc,WebGl,Rect,Audio)

    浏览器指纹js代码重写

    2024-02-01 00:43:35
  • 【JavaScript】函数参数-动态参数

    【JavaScript】函数参数-动态参数

    【JavaScript】函数参数-动态参数

    2024-02-01 00:43:29
  • 关于此实现不是 Windows 平台 FIPS 验证的加密算法的一部分。error

    关于此实现不是 Windows 平台 FIPS 验证的加密算法的一部分。error

    最近因为要做一个启动器,发现有错误如下:错误 1 未知的生成错误“此实现不是 Windows 平台 FIPS 验证的加密算法的一部分。 行 8 位置 3.” c:\users\tinayh\documents\visual studio 2013\Projects\WpfApplication1\WpfApplication1\App.xaml 8 3 WpfApplication1...

    2024-02-01 00:43:20
  • Python:pip 用命令行更改源

    先放命令:pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple一些国内的源:阿里云 http://mirro...

    2024-02-01 00:43:14
  • python实现三维坐标旋转计算

    python实现三维坐标旋转计算

    空间三维坐标系旋转计算计算空间三维坐标系变换一般都是利用旋转矩阵或者欧拉公式。python有个scipy库可以直接用于计算空间三维坐标变换。支持库pip install scipy旋转矩阵计算代码ax...

    2024-02-01 00:42:46
  • JS高级 迭代器-生成器:Iterator-Generator

    JS高级 迭代器-生成器:Iterator-Generator

    写一个针对数组的初级迭代器在函数里面定义了一个iterator对象,里面有next方法,返回值是一个包含done与value的对象,这就是一个迭代器。

    2024-02-01 00:42:39
  • 一文带你入门Python

    一文带你入门Python

    Python入门1.简介2.变量、运算符与数据类型2.1.注释2.2.运算符2.2.1.算术运算符2.2.2.比较运算符2.2.3.逻辑运算符2.2.4.位运算符2.2.5.三元运算符2.2.6.其他...

    2024-02-01 00:42:31
  • 【Ruby学习笔记】18.Ruby 数据库访问 - DBI 教程

    【Ruby学习笔记】18.Ruby 数据库访问 - DBI 教程

    本章节将向您讲解如何使用 Ruby 访问数据库。Ruby DBI 模块为 Ruby 脚本提供了类似于 Perl DBI 模块的独立于数据库的接口。

    2024-02-01 00:42:05
  • 因为月薪过高,我的工资发放失败了。。。

    因为月薪过高,我的工资发放失败了。。。

    上一篇:国家数据局正式揭牌!首次招聘启动!来源:稀土掘金作者:野生的码农码农卫师傅,在忙碌地写了一个月 bug 后,迟迟未能收到工资,紧接着又经历了20元巨款的不翼而飞。这究竟是道德的沦丧,还是人性的...

    2024-02-01 00:41:58
  • Android 音频开发——AudioTrack播放

     AudioTrack类用来管理、播放单个音频资源,它只能播放PCM数据,其他音频格式(aac、amr、opus、flac等)需要经过解码成PCM才能使用。运行模式AudioTrack可以运行两种模式...

    2024-02-01 00:41:50