Skip to content Skip to sidebar Skip to footer

How To Redirect To Another Page After Serving A Post Request In Node.js?

I want to save the data submitted by the user through a form using post method and then redirect it to another html page that I have on my local machine, is there any way to achiev

Solution 1:

I tested below code in my computer and it worked. I added res.redirect('/success') line to the post request handler and created an handler for /success path:

app.get('/', function (req, res) {
  res.sendFile(__dirname + '/index.html')
})

You can change /success path with your naming choice.

App.js

var express = require('express')
var app = express()
var bodyparser = require('body-parser')
app.use(bodyparser.urlencoded({ extended: true }))

app.listen(3000)

app.get('/', function (req, res) {
  res.sendFile(__dirname + '/index.html')
})

app.get('/success', function (req, res) {
  res.sendFile(__dirname + '/success.html')
})

app.post('/register', function (req, res) {
  console.log(req.body)
  res.redirect('/success')
})

index.html

<html>
    <head></head>
    <body>
        <form method="post" action="/register">
            <input type="text" name="username">
            <input type="password" name="password">
            <input type="submit">
        </form>
    </body>
</html>

success.html

<html>
    <head></head>
    <body>
        <h1>Welcome</h1>
    </body>
</html>

Post a Comment for "How To Redirect To Another Page After Serving A Post Request In Node.js?"