前端面试题-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形式都支持)


加油加油^_^

相关推荐
zhengfei61111 小时前
【XSS payload 】一个经典的XSS payload
前端·xss
全栈老石12 小时前
手写一个无限画布 #1:坐标系的谎言
前端·canvas
XW010599912 小时前
4-11判断素数
前端·python·算法·素数
J2虾虾12 小时前
Spring Boot中使用@Scheduled做定时任务
java·前端·spring boot
Heo12 小时前
深入React19任务调度器Scheduler
前端·javascript·面试
一枚前端小姐姐12 小时前
Vue3 + Pinia 状态管理,从入门到模块化
前端·vue.js
boooooooom12 小时前
Vue3 nextTick 实现大变化:微任务优先,彻底搞懂渲染时机!
javascript·vue.js·面试
用户144361834009712 小时前
你不知道的JS上-(九)
前端·javascript
yuki_uix12 小时前
为什么我的 Auth Token 藏在了 Network 面板的 Doc 里?
前端·python·debug
不会敲代码113 小时前
从原子CSS到TailwindCSS:现代前端样式解决方案全解析
前端·css·react.js