даже если я ввожу правильное имя пользователя и пароль, он все еще перенаправляет меня на страницу входа, тогда как он должен перенаправлять меня на секретную страницу. вот мой код - PullRequest
0 голосов
/ 14 апреля 2020

Даже если я ввожу правильное имя пользователя и пароль, он все равно перенаправляет меня на страницу входа, тогда как он должен перенаправлять меня на секретную страницу.

Я сделал именно то, как жеребенок в веб-разработке 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!!!!!!");
    })
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...