Egg.js框架实现登录认证功能模块的逻辑设计与实现思路
发布时间
阅读量:
阅读量
在实际项目开发或面试环节中,一旦涉及项目相关问题,注册与登录功能的验证机制往往成为面试官关注的重点。本次我们将对登录验证流程进行系统性解析,全面梳理其实现方式。(注:本项目实现的基础框架为Egg.js)
第一步:配置中间件
- 在middleware目录中生成adminAuth.js文件
- 中间件需设置csrf全局变量,以确保表单post提交的数据可以正常传输至控制器login.js
- 利用url模块提取用户请求中不含参数的路径信息
- 首先验证session中的userinfo以及username是否同时存在,若两个条件均满足则继续执行后续操作;若任一条件不满足,则进一步判断当前路径是否与登录相关,如属此类路径则允许继续处理,此举旨在避免出现死锁问题;若路径与登录无关,则将用户引导至登录页面,促使其完成身份验证。
const url = require("url");
module.exports = (options) => {
return async function adminAuth(ctx,next) {
console.log("中间件");
console.log(ctx.request.url);
// 配置全局变量
ctx.state.csrf =
全部评论 (0)
还没有任何评论哟~
