Javascript Passport Google OAuth2需要在登录前注销
我正在尝试使用passport对google登录进行身份验证,但是,如果您在第一次进入页面时尝试登录,则会出现以下错误:Javascript Passport Google OAuth2需要在登录前注销,javascript,node.js,passport.js,Javascript,Node.js,Passport.js,我正在尝试使用passport对google登录进行身份验证,但是,如果您在第一次进入页面时尝试登录,则会出现以下错误: TokenError: Bad Request at Strategy.OAuth2Strategy.parseErrorResponse (/home/ubuntu/workspace/node_modules/passport-google-oauth/node_modules/passport-google-oauth20/node_modules/passpor
TokenError: Bad Request
at Strategy.OAuth2Strategy.parseErrorResponse (/home/ubuntu/workspace/node_modules/passport-google-oauth/node_modules/passport-google-oauth20/node_modules/passport-oauth2/lib/strategy.js:329:12)
at Strategy.OAuth2Strategy._createOAuthError (/home/ubuntu/workspace/node_modules/passport-google-oauth/node_modules/passport-google-oauth20/node_modules/passport-oauth2/lib/strategy.js:376:16)
at /home/ubuntu/workspace/node_modules/passport-google-oauth/node_modules/passport-google-oauth20/node_modules/passport-oauth2/lib/strategy.js:166:45
at /home/ubuntu/workspace/node_modules/passport-google-oauth/node_modules/passport-google-oauth20/node_modules/passport-oauth2/node_modules/oauth/lib/oauth2.js:191:18
at passBackControl (/home/ubuntu/workspace/node_modules/passport-google-oauth/node_modules/passport-google-oauth20/node_modules/passport-oauth2/node_modules/oauth/lib/oauth2.js:132:9)
at IncomingMessage.<anonymous> (/home/ubuntu/workspace/node_modules/passport-google-oauth/node_modules/passport-google-oauth20/node_modules/passport-oauth2/node_modules/oauth/lib/oauth2.js:157:7)
at emitNone (events.js:72:20)
at IncomingMessage.emit (events.js:166:7)
at endReadableNT (_stream_readable.js:921:12)
at nextTickCallbackWith2Args (node.js:442:9)
at process._tickDomainCallback (node.js:397:17)
和我的passport配置:
var passport = require('passport');
var GoogleStrategy = require('passport-google-oauth').OAuth2Strategy;
var users = {};
exports.OAuth2Strategy = new GoogleStrategy({
clientID:'ID',
clientSecret:'secret',
callbackURL: '/auth/google/callback',
passReqToCallback: true
}, (req, accessToken, refreshToken, profile, done)=>{
users[profile.id] = profile;
done(null, profile);
});
passport.serializeUser((user, done)=>{
done(null, user.id);
});
passport.deserializeUser((id, done)=>{
done(null, users[id]);
});
exports.users = users;
任何帮助都将不胜感激,我只是一直在绕圈子
var passport = require('passport');
var GoogleStrategy = require('passport-google-oauth').OAuth2Strategy;
var users = {};
exports.OAuth2Strategy = new GoogleStrategy({
clientID:'ID',
clientSecret:'secret',
callbackURL: '/auth/google/callback',
passReqToCallback: true
}, (req, accessToken, refreshToken, profile, done)=>{
users[profile.id] = profile;
done(null, profile);
});
passport.serializeUser((user, done)=>{
done(null, user.id);
});
passport.deserializeUser((id, done)=>{
done(null, users[id]);
});
exports.users = users;