gpt4 book ai didi

javascript - 如何在请求中添加正文并获取nodejs Express中的第二个休息服务

转载 作者:行者123 更新时间:2023-12-03 03:23:09 24 4
gpt4 key购买 nike

我正在尝试使用 POST 将数据从一个休息服务发送到另一个休息服务。

第一个.js

const express = require("express");
const http = require("http");

var router = express.Router();

var options = {
host: "localhost",
port: "3000",
path: "/second",
method: "POST",
body: JSON.stringify({ foo: "foo" })
};

router.get("/", function(req, res, next) {
http.request(options);
});

module.exports = router;

第二个.js

var express = require("express");
var router = express.Router();

router.post("/", function(req, res, next) {
console.log(req.body);
res.send("Hello");
});

module.exports = router;

它返回空对象 {}。有谁知道如何将 JSON 正文从一项服务发送到另一项服务。

app.js

app.use("/first", first);
app.use("/second", second);

最佳答案

您的问题可能不是发送请求正文,而是读取请求正文。

为了处理正文,您需要使用中间件。通常,您将使用 bodyParser.json ( Docs ,请查看底部的示例)

// In second.js, in addition to your other stuff
import bodyParser from 'body-parser';

app.use(bodyParser.json());

这将允许它解析 JSON。

另一个步骤是在发送端 (first.js)。您需要添加 header Content-Type: application/json

这两件事将使 secondary.js 能够正确读取正文并使其可用。

关于javascript - 如何在请求中添加正文并获取nodejs Express中的第二个休息服务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46475384/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com