基于koa后端验证用户是否登录

编程入门 行业动态 更新时间:2024-10-05 15:34:01

基于koa<a href=https://www.elefans.com/category/jswz/34/1771414.html style=后端验证用户是否登录"/>

基于koa后端验证用户是否登录

1.验证用户登录一般都是通过前端发送的请求中是否有包含token,如果请求头中包含了token的话就表示已经登录,没有包含token就表示没有登录。所有我吗要获取前端请求header中的token

先生成token吧,便于后面理解解析token获取用户信息

用于生成token,解析之后也是包含这类信息

res:{id,user_name,is_admin}

async login(ctx,next){// 1.获取用户信息(在token的payload中 记录 id,user_name,is_admin)const {user_name,password} = ctx.request.body// 2.操作数据库try{const {password,...res} = await getUserInfo({user_name})// 3.返回结果ctx.body = {code:0,message:'用户登录成功',result:{token:jwt.sign(res,JWT_SECRET,{expiresIn:'1d'})}}}catch(err){}};

从ctx.request.header中解构出token

const auth = async (ctx, next) => {const { authorization = ''} = ctx.request.header;const token = authorization.replace("Bearer ", "");
}

通过jwt解析token 然后将信息存储于ctx.state.user,便于后期获取用户信息

// user中包含了payload的信息(id, user_name, is_admin)---解析tokenconst user = jwt.verify(token, JWT_SECRET);// 创建state.user对象用于存储用户信息ctx.state.user = user;

更多推荐

基于koa后端验证用户是否登录

本文发布于:2024-03-08 23:11:25,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1722776.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:后端   用户   koa

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!