Próbuję zintegrować paszport z formularzem logowania do mojego kodu. Strona serwera wzywającego po stronie klienta działa tak, jak powinna, dopóki nie wezwę paszportu.authenticate w żądaniu, zwrócono 400 złych żądań. Czego tu mi brakuje?Lokalny zwrot z paszportu 400 nieprawidłowych żądań z Angularem
HTML
<div>
<div class="row">
<div class="input-field col s12">
<input id="user-email" type="text" ng-model="user.email">
<label for="user-email">Your email address</label>
</div>
</div>
<div class="row">
<div class="input-field col s12">
<input id="user-password" type="password" ng-model="user.password">
<label for="user-password">Your password</label>
</div>
</div>
<div id="login-button-panel" class="center-align">
<button class="btn" id="login-btn" ng-click="vm.login(user);">Login</button>
</div>
<div class="section center">
<a class="modal-trigger">Forgot password?</a>
</div>
</div>
JS
$http.post('/api/login',user).success(function(result){
console.log(result)
})
server.js
passport.use(new LocalStrategy(
function(username, password, done) {
return done(null, false, {message:'Unable to login'})
}
));
passport.serializeUser(function(user,done){
done(null,user);
});
passport.deserializeUser(function(user,done){
done(null,user);
});
app.post('/api/login', passport.authenticate('local'), function(req,res){
res.json(req.user)
});
Przepraszam za spóźnioną odpowiedź. I tak, masz rację. Dzięki! –
Obiekt options powinien być pierwszym argumentem w konstruktorze LocalStrategy, a nie drugim argumentem w metodzie "passport.use". – keeri
@Fkids Dzięki za radę. Naprawione. – cepharum