我正在开发一个应用程序,允许用户在使用他们的Facebook或Google ID进行身份验证后访问该网站。,这将由前端完成,在后端前端端将只发送访问令牌,如下所示:ya29.a0AVA9y1tHwvchD95jJmDNMzKkW7P9nIAyvHX58AY-bC_Dy_-7lhXkrXpfe8iRXIrLHbDKZRFmzphfMceFH3di6X_2-_FcwiXa8GvDwOmYwwzgt1MUETzlFRrcnuWDDbAsa2Yj00BFDyAqK6fuO8smUYmyXw1taCgFRDTASAQASFQE65dr8E1cHOK0krpI8Efn0d9eXDg7852。
现在,基于这个访问令牌,如何获取该用户的详细信息并将其保存到数据库中。
发布于 2022-09-06 10:36:04
您可以使用google节点API客户端库检索用户配置文件。在这种情况下,请检索访问令牌和刷新令牌作为https://www.googleapis.com/auth/userinfo.profile的作用域。示例脚本如下所示。使用此示例时,请设置访问令牌。
var google = require('googleapis').google;
var OAuth2 = google.auth.OAuth2;
var oauth2Client = new OAuth2();
oauth2Client.setCredentials({access_token: 'ACCESS TOKEN HERE'});
var oauth2 = google.oauth2({
auth: oauth2Client,
version: 'v2'
});
oauth2.userinfo.get(
function(err, res) {
if (err) {
console.log(err);
} else {
console.log(res);
/*WRITE SIMPLE MongoDB INSERT LOGIC HERE*/
db.users.insert(res)
}
});根据上述逻辑,您将能够获得用户详细信息并将其插入MongoDB中。
https://stackoverflow.com/questions/73620022
复制相似问题