On this page
jwt 加密鉴权
插件地址:
安装
shell
npm i egg-jwt --save
配置
js
// {app_root}/config/plugin.js
exports.jwt = {
enable: true,
package: "egg-jwt",
};
// {app_root}/config/config.default.js
exports.jwt = {
secret: "qhdgw@45ncashdaksh2!#@3nxjdas*_672",
};
生成token
js
// 生成token
async getToken(value) {
return this.app.jwt.sign(value, this.app.config.jwt.secret);
}
验证token
js
try {
user = app.jwt.verify(token, app.config.jwt.secret);
} catch (err) {
let fail = err.name === "TokenExpiredError"
? "token 已过期! 请重新获取令牌"
: "Token 令牌不合法!";
return ctx.apiFail(fail);
}