书接上回,首先先安装插件
npm i egg-jwt --save
插件配置
// {app_root}/config/plugin.js
exports.jwt = {
enable: true,
package: "egg-jwt"
};
在config.default.js里面进行配置secret;
// {app_root}/config/config.default.js
exports.jwt = {
secret: "123456"
};
在controller home.js里面增加方法login,用于生成token
login() {
const { ctx, app } = this;
ctx.body = app.jwt.sign({ userId: '10086' }, app.config.jwt.secret);
}
生成token的其他参数请参照JsonWebToken implementation for node.js,如过期时间:
在router 里面添加新增的路由login,中间件不加jwt;在原来的获取用户信息的地方价格中间件;
/login地址访问后出现:
/ 地址直接访问后出现 401,因为没有传过去token
安装postman,通过获取到/login的返回的token,设置jwt相关参数,通过egg-jwt的文档我们看到相关参数设置,请求后得到如下截图。
至此,使用jwt完毕。下一篇介绍封装统一返回结果。