Как перенаправить на другую страницу после подачи почтового запроса в Node.js? - PullRequest
0 голосов
/ 05 января 2019

Я хочу сохранить данные, отправленные пользователем через форму, используя метод post, а затем перенаправить их на другую html-страницу, которая есть у меня на локальном компьютере, есть ли способ добиться этого с помощью Node.js или указать, как это сделать? Я так делаю?

Вот HTML-код для формы:

<html>
<head></head>
<body>
    <form action="post_register.html" method="POST">
        university name:<input type="text" name="name" placeholder="University name"><br>
        faculty Username:<input type="text" name="facul" placeholder="faculty username"><br>
        password:<input type="password" name="password" placeholder="password"><br>
        <button >register</button>
    </form>
</body>

и вот файл javascript:

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

app.listen(3000);

app.get("/domain_register",function(req,res)
{
  res.sendFile(__dirname+"/domain_register.html");
})

app.post("/post_register",function(req,res)
 {
  console.log(req.body);
  res.end("yes");
});

все, что я хочу, это чтобы после нажатия кнопки подтверждения данные были получены, и пользователь был перенаправлен в файл post_register.html.

1 Ответ

0 голосов
/ 05 января 2019

Я тестировал приведенный ниже код на моем компьютере, и он работал. Я добавил res.redirect('/success') строку в обработчик запроса и создал обработчик для /success path:

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

Вы можете изменить /success путь с вашим выбором имени.

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