【问题标题】:How to redirect to another page after serving a post request in Node.js?在 Node.js 中提供发布请求后如何重定向到另一个页面?
【发布时间】:2019-05-31 18:57:52
【问题描述】:

我想使用 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 文件。

【问题讨论】:

  • 在我看来,这应该从您请求发布的客户端完成。可能在.then 帖子块中

标签: javascript html node.js express


【解决方案1】:

我在我的电脑上测试了下面的代码,它工作正常。我将res.redirect('/success') 行添加到发布请求处理程序并为/success 路径创建了一个处理程序:

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>

成功.html

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

【讨论】:

猜你喜欢
  • 2016-02-10
  • 1970-01-01
  • 1970-01-01
  • 2012-07-28
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-03-01
相关资源
最近更新 更多