我找不到任何关于使用google oauth和google apis的文档。目前,我这样做,但它不是一个完整的指南:https://developers.google.com/identity/sign-in/web/server-side-flow
我想做什么:
我有一个基于节点的应用程序,带有一个简单的JS前端。
service
级别的访问权限。目前我有一个google登录信息,它会返回如下代码验证码:localhost:8000/?code=123
。我不知道如何处理该身份验证代码。不幸的是,仅为Java
和Python
提供了文档。
接下来就是获取身份验证令牌(不知何故),然后找出如何授予service account
访问权限。
任何人都知道怎么做?
答案 0 :(得分:0)
你看过PassportJS了吗?它为Google
提供了非常可靠的实现我已经为Facebook做了类似的事情,并将其粘贴在这里以防万一:
首先,我将以下内容添加到我的节点应用程序中:
var passport = require('passport');
var FacebookStrategy = require('passport-facebook').Strategy;
然后,下面:
app.use(passport.initialize());
app.use(passport.session());
然后,下面:
passport.serializeUser(function(user, done){
done(null, user.id);
});
passport.deserializeUser(function(id, done){
userModel.findById(id, function(err, user){
done(err, user);
});
});
passport.use(new FacebookStrategy({
clientID: config.facebook.appID,
clientSecret: config.facebook.appSecret,
callbackURL: config.facebook.callbackURL,
profileFields: ['id', 'displayName', 'photos', 'emails', 'birthday', 'location', 'bio', 'likes.limit(100)']
},
function(accessToken, refreshToken, profile, done){
//Do whatever I want
}
)
);
我不会解释所有这些 - 但看看它是否有助于您整合Google应用。祝你好运!