Próbuję ustawić paszport po raz pierwszy i mam tylko jedną opcję logowania google. Zarejestrowałem się w google apis, więc mam całą tę konfigurację. kod referencyjny znajduje się poniżej, ale kiedy moja aplikacja wywołuje wywołanie '/auth/google/'
, po prostu nie powiedzie się bez odpowiedzi lub komunikatu o błędzie. Przełączam konfigurację na kilka sposobów bezskutecznie. Wymieniłem również passport.authenticate('google')
z anonimową funkcją z console.log, aby sprawdzić, czy moja usługa sieciowa działa poprawnie i tak właśnie jest. Więc wiem, że dociera do passport.authenticate('google')
.Uwierzytelnianie Passport.js nie działa
// serialize session
passport.serializeUser(function (user, done) {
done(null, user.id);
});
passport.deserializeUser(function (obj, done) {
done(null, obj);
});
// use google strategy
passport.use(new googleStrategy({
clientID: config.google.clientID,
clientSecret: config.google.clientSecret,
callbackURL: config.google.callbackURL,
scope: 'https://www.google.com/m8/feeds https://www.googleapis.com/auth/userinfo.email https://www.googleapis.com/auth/userinfo.profile'
},
function(accessToken, refreshToken, profile, done) {
console.log(profile);
}
));
app.use(passport.initialize());
app.use(passport.session());
app.get('/auth/google', passport.authenticate('google'));
app.get('/auth/google/callback', passport.authenticate('google', { failureRedirect: '/', scope: 'https://www.google.com/m8/feeds' }), signin);
EDIT: Oto moja prośba http używam kanciasty i ta funkcja jest związana z ng kliknij na przycisku.
$scope.signIn = function() {
$http({method: 'GET', url: '/auth/google'}).
success(function (data, status, headers, config) {
console.log('success');
}).
error(function (data, status, headers, config) {
console.log(data);
console.log(status);
console.log(headers);
console.log(config);
});
};
dzienniki te nic powrócić
Naprawdę nie mam komunikat o błędzie? Może być timeout? Jak to się nie udaje? – maxdec
Nie mogłem złapać ani odzyskać niczego. Wygląda na to, że zawodzi, bez żadnego zwrotu. Może to źle skonfigurowane połączenie. Na wszelki wypadek dodam kod ajaxowy. –