Advertisement

Egg.js框架实现登录认证功能模块的逻辑设计与实现思路

阅读量:

在实际项目开发或面试环节中,一旦涉及项目相关问题,注册与登录功能的验证机制往往成为面试官关注的重点。本次我们将对登录验证流程进行系统性解析,全面梳理其实现方式。(注:本项目实现的基础框架为Egg.js)

第一步:配置中间件

  1. 在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)

还没有任何评论哟~