2017-07-19 10 views
0

私が理解しているgoogle oauthとgoogle apisの使用に関するドキュメントは見つかりません。現時点では、私はこれをやっているが、それは完全なガイドではありません。https://developers.google.com/identity/sign-in/web/server-side-flowGoogle oauth&apis操作方法

私がやろうとしています何:

私は、単純なJSのフロントエンドと、ノードベースのアプリを持っています。

  • Googleログインが必要です。
  • ユーザーがログインすると、自分のサーバー上のユーザー名が作成されます。
  • 私のサーバー上にこのユーザーの下にGoogleトークンを何とか保存します。
  • 何とかバックエンドにserviceレベルのアクセス権を付与します。
  • このバックエンドは、ユーザーの操作なしに、必要に応じて変更やカレンダー情報の読み取りを行うことができます。

現時点では、このような認証コードを返すgoogleのログインがあります:localhost:8000/?code=123。私はその認証コードで何をすべきかわかりません。ドキュメントはJavaPythonのためにのみ提供されています。

次に、認証トークンを取得して(何とか)、私のservice accountにアクセスを与える方法を理解することです。

誰でも知っていますか?

答えて

0

PassportJSをご覧ください。それは私がFacebookのために似た何かを行っているGoogle

のための非常に強固な実装を持っており、ケースには、ここに貼り付けます、それが役立ちます:

をので、まず、私は私のノードアプリに以下を追加しました:

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アプリの統合に役立つかどうかを確認してください。がんばろう!

+0

これは実際に私が試した最初の事でした。私はそれを働かせることができませんでした。それはGoogleのAPIアクセスを行うのですか?これらの戦略のどれもがドキュメントを持っていないので、かなり固まってしまった。 – userqwert

+0

私はコメントを編集して詳細情報を追加します(しかし、Facebook用)が、それはあなたにアイデアを与えるでしょう。 –

関連する問題