📜  HTTP POST 请求如何在 Node.js 中工作?

📅  最后修改于: 2022-05-13 01:56:35.154000             🧑  作者: Mango

HTTP POST 请求如何在 Node.js 中工作?

POST 是万维网使用的 HTTP 支持的请求方法。 HTTP POST 方法将数据发送到服务器。请求正文的类型由 Content-Type 标头指示。我们使用 Express.js 来创建服务器并发出请求(GET、POST 等)。

npm i express

注意:上述命令中的npm代表节点包管理器,这是我们安装所有依赖项的地方。

因此,为了使用 Express 来处理我们服务器上的 POST 请求,我们使用 app.post 方法,然后我们指定路由,并且我们有一个回调。

app.post(route, function(req, res){
    //this is a callback function
})

注意:如果要在 NodeJS 中频繁发出 GET、POST 请求,那么使用 Postman ,简化构建 API 的每一步。

在这种语法中,路由是您必须发布从 HTML 获取的数据的地方。要获取数据,您可以使用bodyparser包。

Web 服务器:在根文件夹中创建 app.js。如下例所示创建您的服务器。

javascript
const express = require("express");
const app = express();
  
// Define routes here ...
  
app.listen(3000, function(){
  console.log("server is running on port 3000");
})


html


  

    
    Calculator

  

    

Simple Calculator.

    
                                              
  


javascript
const express = require("express");
const bodyParser = require("body-parser")
  
// New app using express module
const app = express();
app.use(bodyParser.urlencoded({
    extended:true
}));
  
app.get("/", function(req, res) {
  res.sendFile(__dirname + "/index.html");
});
  
app.post("/", function(req, res) {
  var num1 = Number(req.body.num1);
  var num2 = Number(req.body.num2);
    
  var result = num1 + num2 ;
    
  res.send("Addition - " + result);
});
  
app.listen(3000, function(){
  console.log("server is running on port 3000");
})


处理 Post 请求:在这里您将学习如何处理 HTTP POST 请求并从提交的表单中获取数据。

在应用程序的根文件夹中创建 index.html 并在其中编写以下 HTML 代码。

文件名:index.html

html



  

    
    Calculator

  

    

Simple Calculator.

    
                                              
  

输出:

在 Express.js 中处理 POST 路由:
文件名:app.js

javascript

const express = require("express");
const bodyParser = require("body-parser")
  
// New app using express module
const app = express();
app.use(bodyParser.urlencoded({
    extended:true
}));
  
app.get("/", function(req, res) {
  res.sendFile(__dirname + "/index.html");
});
  
app.post("/", function(req, res) {
  var num1 = Number(req.body.num1);
  var num2 = Number(req.body.num2);
    
  var result = num1 + num2 ;
    
  res.send("Addition - " + result);
});
  
app.listen(3000, function(){
  console.log("server is running on port 3000");
})

运行步骤:

  • npm 初始化
  • npm 安装快递
  • npm 安装正文解析器
  • 节点应用程序.js
  • 在浏览器中访问 http://localhost:3000。

输出: