0
ドキュメントを見て、コーディングエラーは発生していませんが、メッセージは戻っていません。私が間違った電子メールとパスワードを入力した場合、私が受け取っているのは応答の中で無許可です。ここで Here is a image of the responseパスポートを使用して、ユーザーまたはパスワードが間違っているときにエラーメッセージを表示
コードです:
const passport = require('passport');
const User = require('../models/user');
const config = require('../config');
const JwtStrategy = require('passport-jwt').Strategy;
const ExtractJwt = require('passport-jwt').ExtractJwt;
const LocalStrategy = require('passport-local');
//creat local Strategy
const localOptions = {usernameField: 'email'}
const localLogin = new LocalStrategy(localOptions, function(email, password, done) {
User.findOne({email: email}, function(err, user) {
if(err) {return done(err);}
if(!user) {
return done(null, false, {message: 'Incorrect email'});
}
//compare passwords - is `password` equal to user.password?
user.comparePassword(password, function(err, isMatch) {
if(err) {return done(err);}
if(!isMatch) {
return done(null, false, {message: 'Incorrect password'});
}
return done(null, user);
});
});
});
//Setup options for JWT Strategy
const jwtOptions = {
jwtFromRequest: ExtractJwt.fromHeader('authorization'),
secretOrKey: config.secret
};
//Create JWT Strategy
const jwtLogin = new JwtStrategy(jwtOptions, function(payload, done) {
//See if the user ID in the payload exists in our database
// if it does, call 'done' with that user, otherwise
// call done without a user object
User.findById(payload.sub, function(err, user) {
if (err) { return done(err, false); }
if (user) {
done(null, user);
} else {
done(null, false);
}
});
});
//Tell passport to use this Strategy
passport.use(jwtLogin);
passport.use(localLogin);
リンクされた画像にはヘッダーのみが表示されます。応答タブは空ですか? –
レスポンスだけが不正な人物と表示されます。 –