passport-qq2015

1.0.0 • Public • Published

passport-qq2015

QQ第三方授权登录,使用与web网站,可在express和koa等框架中使用。 代码用到了Object.assign(),需要在 es6 的环境中使用。

Install

$ npm install passport

项目文件结构

整个项目采用MVC架构,基本项目结构如下图

passport-qq2015/             项目根目录
├── lib/                     核心代码           
├── package.json  npm的声明文件,包含项目的依赖等
└── README.md 包含对此此项目的一些介绍,就是当前说看到的内容

Usage

配置strategy

 
  passport.use('qq-token', new qqStrategy({
    clientID: config.qq.appID,
    clientSecret: config.qq.appKEY,
    callbackURL: 'http://www.xxxx.com/auth/token/qq/callback'
  },
    function (accessToken, refreshToken, profile, done) {
      if (!profile) {
        return done(null, false);
      }
 
      return done(null, profile);
    }
  ));

授权请求

包含两个api接口。第一个请求负责跳转到授权页面,第二个请求是qq授权的回调地址,根据获得的code,依次获得accessToKen, openId, userInfo,并最终跳转到指定的地址。

example如下:

 
  router.get('/token/qq', passport.authenticate('qq-token', {
    session: false
  }));
 
  router.get('/token/qq/callback',
    passport.authenticate('qq-token', {
      session: false,
      failureRedirect: 'http://www.fail.com'
    }),
    function *() {
      const res = this.response;
      res.redirect('http://success.com');
    });

Readme

Keywords

Package Sidebar

Install

npm i passport-qq2015

Weekly Downloads

0

Version

1.0.0

License

none

Last publish

Collaborators

  • chenyutian0510