Jake.L.B
Jake.L.B

Reputation: 23

How do i redirect in node.js

I would like to be able to redirect from registration-page to login-page on successfull registration and again from login-page to home-page afteer successfull login.

I dont know what methods to use or where to call them.

This is the register call.

       
        app.post("/api/register", async (req, res) => {
            const { username, password: plainTextPassword } = req.body;

          
            const password = await bcrypt.hash(plainTextPassword, 10);

            try {
                const response = await User.create({
                    username,
                    password
                })

                console.log("User created", response)

            } catch (error) {
                if (error.code === 11000) {
                    return res.json({ status: "error", error: "Username already in use" })
               }
                throw error
            }

            res.json({ status: "ok" });
        });


This is the script

       

    <script>
        const form = document.getElementById("reg-form");
        form.addEventListener("submit", registerUser);


        async function registerUser(event) {
            event.preventDefault();
            const username = document.getElementById("username").value;
            const password = document.getElementById("password").value;

            const result = await fetch("/api/register", {
                method: "POST",
                headers: {
                    "Content-Type": "application/json"
                },
                body: JSON.stringify({
                    username,
                    password
                })

            }).then((res) => res.json())

            if (result.status === "ok") {
                alert("Success");

            } else {
                alert(result.error)
            }

        }
    </script>
</body>

</html>

Upvotes: 0

Views: 26

Answers (1)

user10793022
user10793022

Reputation:

You should return the line that redirects

return res.redirect('/UserHomePage');

Upvotes: 1

Related Questions