const express = require("express"); const bodyParser = require("body-parser"); const session = require("express-session"); const app = express(); const mockUser = { username: "beth", password: "badpassword", email: "beth@example.com", }; app.use( session({ secret: "Node Cookbook", name: "SESSIONID", resave: false, saveUninitialized: false, cookie: { sameSite: true }, }) ); app.use(bodyParser.urlencoded({ extended: false })); app.get("/", (req, res) => { if (req.session.user) return res.redirect("/account"); res.send(`

Social Media Account - Login

`); }); app.post("/", (req, res) => { if ( req.body.username === mockUser.username && req.body.password === mockUser.password ) { req.session.user = req.body.username; } if (req.session.user) res.redirect("/account"); else res.redirect("/"); }); app.get("/account", (req, res) => { if (!req.session.user) return res.redirect("/"); res.send(`

Social Media Account - Settings

Email: ${mockUser.email}

`); }); app.post("/update", (req, res) => { if (!req.session.user) return res.sendStatus(403); mockUser.email = req.body.email; res.redirect("/"); }); app.listen(3000, () => { console.log("Server listening on port 3000"); });