我正在尝试使用passport-google-token进行Google oAuth身份验证,以便对Android客户端和iOS应用进行身份验证。
我们在console.developers.google.com中生成了两个凭据。使用客户端oAuth id->创建的一个在客户oAuth id-> web。
下的另一个移动应用正在使用第一个,而另一个正在后端使用nodejs和express。 Android客户端能够从谷歌检索访问令牌,并将其发送到后端令牌。 passport-google-token正在正确接收访问令牌。但是当试图让配置文件收到401 - 无效凭证时。
passport.use(new GoogleTokenStrategy({
clientID: GOOGLE_CLIENT_ID,
clientSecret: GOOGLE_CLIENT_SECRET
},
function(accessToken, refreshToken, profile, done) {
User.findOrCreate({ googleId: profile.id }, function (err, user) {
return done(err, user);
});
}
));
在客户端ID和客户端密钥中,我使用来自Web客户端凭据的密钥。但是我的代码永远不会归功于回调函数。
我的问题是。凭据是否必须以任何方式相关,以便我可以使用访问令牌?我的意思是移动凭据和我在后端使用的凭证。
我正在关注此流https://developers.google.com/identity/sign-in/android/start
编辑:我意识到问题也发生在iOS应用程序中。