前端面试题-token的登录流程、JWT

这是我的前端面试题的合集的第一篇,后面也会更新一些笔试题目。秋招很难,也快要结束了。但是,不要放弃,一起加油^_^


一、token的登录流程

1.客户端用账号密码请求登录

2.服务端收到请求,需要去验证账号密码

3.验证成功后,服务端发一个token,把这个token发送给客户端

4.客户端收到token后保存起来,可以存在cookie或者localstorage

5.客户端每次为服务器发送请求资源时,都需要携带这个token

6.服务端收到请求,接着去验证客户端的token,验证成功则返回客户端请求的数据

二、了解JWT吗?JWT的认证流程

JWT全称为JSON WEB Token

通过JSON形式作为web应用中的令牌,用于各方之间安全地把信息用JSON对象传输

可以作信息传输、授权

JWT的认证流程

1.前端把账号密码发送给后端接口

2.后端核对账号密码成功后,把用户id等其它信息作为JWT负载,把它和头部分别进行base64编码拼接后签名,形成一个token->JWT

3.前端每次请求时都会把JWT放在HTTP请求头的Authorization字段内

4.后端检查是否存在JWT,如果存在就验证JWT(签名是否正确,token是否过期)

5.验证通过后后端使用JWT中包含的用户信息进行其他操作,并返回对应结果

JWT的特点

简洁,包含性,跨语言的(token用JSON加密形式保存,原则上是任何web形式都支持)


加油加油^_^

相关推荐
IT_陈寒6 小时前
SpringBoot3.0性能优化:这5个冷门配置让我节省了40%内存占用
前端·人工智能·后端
霍理迪6 小时前
常用块标签和三种列表
前端·html
kesteler6 小时前
v-model的使用
前端·javascript·vue.js
Zhi.C.Yue6 小时前
React 的桶算法详解
前端·算法·react.js
果壳~6 小时前
【前端】【canvas】【pixi.js】水波纹滤镜实现教程 - 支持随机波动与鼠标交互
前端·javascript
han_6 小时前
手把手教你写一个VSCode插件,从开发到发布全流程
前端·javascript·visual studio code
爱吃大芒果6 小时前
Flutter 状态管理全家桶:Provider、Bloc、GetX 实战对比
开发语言·前端·javascript·flutter·华为·ecmascript
未知原色6 小时前
react实现虚拟键盘支持Ant design Input和普通input Dom元素-升级篇
前端·javascript·react.js·node.js·计算机外设
半桶水专家6 小时前
vue3中v-model 用法详解
前端·javascript·vue.js
行走的陀螺仪6 小时前
Vue3 项目单元测试全指南:价值、Vitest 落地与提效方案
开发语言·前端·单元测试·html5·vitest