passport-sina

A sina-weibo oauth2 strategy for passport.

passport-sina

用于 passport,基于 passport-oauth 的新浪微博 OAuth2 Strategy 。

$ npm install passport-sina
passport.use(new passport_sina({
    clientID: 'your app key here'
  , clientSecret: 'your app secret here'
  , callbackURL: 'your callback url here'
//  , requireState: true // for csrf, default: true
//  , scope: ['statuses_to_me_read'
//          , 'follow_app_official_microblog']
},
function(accessToken, refreshToken, profile, callback) {
    // verify
    process.nextTick(function () {
        return callback(null, profile);
    });
}));
// Auth
app.get('/auth/sina', passport.authenticate('sina'));
// Callback
app.get('/auth/sina/callback', passport.authenticate('sina', { failureRedirect: '/aaa', successRedirect: '/' }));

需要注意的是,由于默认启用 state 特性(防CSRF),你需要启用 express 或 connect 的 session 中间件;

一个完整的例子可见 example/app.js

$ npm install
$ make test