Skip to content

Instantly share code, notes, and snippets.

@duizendnegen
Created April 8, 2017 13:28
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save duizendnegen/f0b8faea5ce9a1cfde74fa752e0cfe2e to your computer and use it in GitHub Desktop.
Save duizendnegen/f0b8faea5ce9a1cfde74fa752e0cfe2e to your computer and use it in GitHub Desktop.
var passport = require('passport');
var BearerStrategy = require('passport-http-bearer').Strategy;
var UserStore = require('../stores/user-store');
passport.use(new BearerStrategy(
function(token, done) {
request('https://www.googleapis.com/oauth2/v3/tokeninfo?access_token=' + token, function(err, response, body) {
if(err) {
console.error(err);
done(err);
return;
}
var user = JSON.parse(body);
var email = user["email"];
if(!email) {
console.error(user.error_description);
done(user.error_description);
return;
}
UserStore.findOrCreate(email, function(err, user) {
if(err !== null) {
console.error(err);
}
done(err, user);
});
});
}
));
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment