egg.js前后端分离使用JWT解决登录token问题

最近在学习egg.js,在练习的时候,想到现在都是前后端分离,那egg.js该怎么解决登录token问题呢?然后我就网上各种搜解决办法,现在我就结合自己实际经验给大家讲一下:

  1. 下载egg-jwt插件

    1
    2
    3
    4
    5
    npm i egg-jwt --save

    // 或者

    yarn add egg-jwt
  2. 修改插件配置文件{app_root}/config/plugin.js

    1
    2
    3
    4
    exports.jwt = {
    enable: true,
    package: "egg-jwt"
    };
  3. 修改默认配置文件{app_root}/config/config.default.js

    1
    2
    3
    exports.jwt = {
    secret: "123456" // 123456是自己随便写的,根据自己项目进行修改
    };
  4. 创建一个token

    1
    2
    const { ctx, app, config } = this;
    const token = app.jwt.sign({ foo: 'bar' }, config.jwt.secret); // 创建token
  5. 验证token

    1
    2
    3
    const { ctx, app, config } = this;
    const { token } = await ctx.request.body;
    const res = app.jwt.verify(token, config.jwt.secret); // 验证token

For more options, check here

刘伟 wechat
欢迎您扫一扫上面的微信公众号( 或者搜索:darrenliuwei )订阅
如果觉得本文对您有启发,可以随意打赏一点鼓励我继续更新!