最近在学习egg.js,在练习的时候,想到现在都是前后端分离,那egg.js该怎么解决登录token问题呢?然后我就网上各种搜解决办法,现在我就结合自己实际经验给大家讲一下:
下载egg-jwt插件
1
2
3
4
5npm i egg-jwt --save
// 或者
yarn add egg-jwt修改插件配置文件
{app_root}/config/plugin.js
1
2
3
4exports.jwt = {
enable: true,
package: "egg-jwt"
};修改默认配置文件
{app_root}/config/config.default.js
1
2
3exports.jwt = {
secret: "123456" // 123456是自己随便写的,根据自己项目进行修改
};创建一个
token
1
2const { ctx, app, config } = this;
const token = app.jwt.sign({ foo: 'bar' }, config.jwt.secret); // 创建token验证
token
1
2
3const { 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