我想在服务器端验证用户谷歌id。所以我想用户谷歌信息使用谷歌api。我已经看了所有的文件,但还是卡住了。我已经看到了这段代码,它工作得很好:
var google = require('googleapis');
var plus = google.plus('v1');
var OAuth2 = google.auth.OAuth2;
var oauth2Client = new OAuth2(CLIENT_ID, CLIENT_SECRET, REDIRECT_URL);
// Retrieve tokens via token exchange explained above or set them:
oauth2Client.setCredentials({
access_token: 'ACCESS TOKEN HERE',
refresh_token: 'REFRESH TOKEN HERE'
});
plus.people.get({ userId: 'me', auth: oauth2Client }, function(err, response) {
// handle err and response
});
,但这是为Google +。我想取用户谷歌个人资料与id不是谷歌加信息。请帮助。
对于googleapis
版本的19.0.0
,您需要这样做:
const googleapis = require('googleapis');
googleapis.people('v1').people.get({
resourceName: 'people/me',
personFields: 'emailAddresses,names',
auth: oauth2Client,
(err, response) => {
// do your thing
}
});
字段resourceName
和personFields
可能会因为说它们是强制性的而出错。你可以在这里找到详细信息https://developers.google.com/people/api/rest/v1/people/get。
至于作用域,下面的代码片段应该足够了:https://www.googleapis.com/auth/userinfo.email和https://www.googleapis.com/auth/userinfo.profile