Egg 安装 passport/passport-jwt
背景介绍:passport 与 jwt。
-
passport 是一组权鉴用的sdk。有许多版本,支持第三方登录,什么github,facebook,twitter等。具体情况,请查看官方文档。因为经常做前后端分离,这里先安装最简单的passport-jwt做实验。
-
jwt就是jsonwebtoken,是一种跨域验证的手段。
安装配置
- 在npmjs搜索到三个关键的插件egg-passport 、egg-passport-jwt、jsonwebtoken。
- 先安装jsonwebtoken、egg-passport,然后安装egg-passport-jwt。这有个坑,在egg-passport-jwt安装文档上没有说要求安装egg-passport。然后当时只安装了egg-passport-jwt,运行一堆错,看了log,才晓得安装egg-passport。
- 在plugin.js中开启这两个插件,配置config/plugin.js如下:
module.exports = {
// had enabled by egg
// static: {
// enable: true,
// }
passport : {
enable: true,
package: 'egg-passport',
},
passportJwt:{
enable: true,
package: 'egg-passport-jwt',
}
};
- 在config/config.default.js 中配置 secret 或者key如下:
config.passportJwt = {
secret: 'xxxxx',
};
使用例子
- 新建一个控制器app/controller/AuthorizeController.js,里面定义一个login方法如下&#