Даже если я ввожу правильное имя пользователя и пароль, он все равно перенаправляет меня на страницу входа, тогда как он должен перенаправлять меня на секретную страницу.
Я сделал именно то, как жеребенок в веб-разработке bootcamp на udemy.com перенаправил его на секретную страницу, но почему я нет. вот мой код страницы входа в систему
<h1>
login
</h1>
<form action="/login" method="POST">
<input type="text" placeholder="username" name="usernametxt">
<input type="password" placeholder="password" name="passwordtxt">
<button>login</button>
</form>
, а вот мой код страницы регистрации
<h1>sign up form</h1>
<form action="/register" method="POST" >
<input type="text" name="usernametxt" placeholder="username">
<input type="password" name="passwordtxt" placeholder="password">
<button>Submit</button>
</form>
и ниже мое приложение. js код
var express = require('express'),
app = express(),
User = require('./models/user.js'),
mongoose = require('mongoose'),
bodyParser = require('body-parser'),
passport = require('passport'),
LocalStrategy = require('passport-local'),
passportLocalMongoose = require('passport-local-mongoose');
mongoose.connect("mongodb://localhost:27017/authdemo", {
useNewUrlParser: true,
useUnifiedTopology: true
});
app.set('view engine', 'ejs');
app.use(bodyParser.urlencoded({
extended: true
}));
app.use(require('express-session')({
secret: "Varsha bollamma is a good actor",
resave: false,
saveUninitialized: false
}));
app.use(passport.initialize());
app.use(passport.session());
passport.use(new LocalStrategy(User.authenticate));
passport.serializeUser(User.serializeUser());
passport.deserializeUser(User.deserializeUser());
//================================
//Routes
//================================
app.get("/", function (req, res) {
res.render("home");
})
app.get("/secret", function (req, res) {
res.render("secret");
})
//Auth routes===============================================
//Show sign up page
app.get("/register", function (req, res) {
res.render("register");
});
//handling user sign up
app.post("/register", function (req, res) {
req.body.usernametxt
req.body.passwordtxt
User.register(new User({
username: req.body.usernametxt
}), req.body.passwordtxt, function (err, user) {
if (err) {
console.log(err);
return res.render("register");
} else {
passport.authenticate("local")(req, res, function () {
res.redirect("/secret");
});
}
})
});
//login routes
//render login pAage
app.get("/login", function (req, res) {
res.render("login");
})
//login logic
app.post("/login", passport.authenticate("local", {
successRedirect: "/secret",
failureRedirect: "/login"
}), function (req, res) {});
//==========================start the server=======================
app.listen(100, function () {
console.log("server started!!!!!!");
})