我第一次尝试设置 NodeJS Express JSON REST API,但在尝试检索来自请求(GET 和 POST 请求)的 JSON 数据时遇到一些麻烦
这是代码:
var bodyParser = require("body-parser");
const express = require("express");
const app = express();
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({
extended: true
}));
app.get("/prova", (req, res)=>{
console.log(req.headers["content-type"]);
console.log(req.body);
res.status(200).json(req.body);
});
这是console.log(); 当尝试使用 Postman 发出带有某些参数的请求时:
application/json
{}
这是邮递员请求的详细信息
您应该避免按照
MDN Web 文档使用 HTTP GET 方法发送
body
。至于显示的 GET 方法,这一行 res.status(200).json(req.body);
为您提供了一个空对象,例如将其更改为 res.status(200).json({message:"Hello world!"});
以查看消息。对于 POST 方法,您可以像使用 body
一样访问 req.body
。
您缺少仅解析 json 且仅查看 Content-Type 标头与类型选项匹配的请求的快速中间件。
app.use(express.json());