当前位置: 首页 > 知识库问答 >
问题:

我从快递中得到定义。为什么要求正文显示空对象 {}?[重复]

宗翔宇
2023-03-14

这是新手问题,但我是新手。要求正文未定义。我试过没有身体-

解析器和身体解析器,我一直得到相同的结果,我尝试了所有解决方案

在StackOverflow中可用,但我一直得到相同的结果。

这是我的客户端代码:

document.addEventListener("DOMContentLoaded", () => {
            document.getElementById('send').addEventListener('click', (e) => {
                var message = { name: document.getElementById('name').value, message: document.getElementById('message').value }
                postMessages(message)
            })
            getMessages()

        });
        function addMessages(message) {
            const ele = document.getElementById('messages')
            const h4 = document.createElement('h4')
            const p = document.createElement('p')
            h4.textContent = `${message.name}`
            p.textContent = `${message.message}`
            ele.append(h4, p)
        }
        function postMessages(message) {
            const Url = "http://localhost:3000/messages"
            fetch(Url, {
                method: 'POST',
                body: message,
            })
        }

这是我的NodeJs代码:

var express = require('express')
var bodyParser = require('body-parser')
var app = express()

app.use(express.static(__dirname))
app.use(bodyParser.json())
app.use(bodyParser.urlencoded({ extended: false }))
var messages = [
    { name: "Tim", message: "Hi" },
    { name: "Jane", message: "Hello" }
]
app.post('/messages', (req, res) => {
    console.log(req.body)
    messages.push(req.body)
    res.sendStatus(200)
})

共有1个答案

邓昀
2023-03-14

您需要更改获取函数,并首先对消息进行 JSON.字符串化,然后添加正确的标头:

function postMessages(message) {
        const Url = "http://localhost:3000/messages"
        fetch(Url, {
            method: 'POST',
            headers: {
                'Content-Type': 'application/json'
            },
            body: JSON.stringify(message),
        })
    }
 类似资料:
  • 问题内容: require- 要求将另一个控制器传递给当前的指令链接功能。require会传入指令控制器的名称。如果找不到此类控制器,则会引发错误。该名称可以带有以下前缀: ?-不要提出错误。这使得require依赖关系是可选的。 ^-还要在父元素上查找控制器。 以上是官方文档的定义。这里的歧义恰恰是“指令控制器”。 以angularjs-ui引导项目中的tabs指令为例。 该指令有,其中,是它的

  • 我是新来的Spring,昨天我创建了一个简单的应用程序。我键入书名、作者和流派,它将其保存到

  • 这应该是一个相对简单的问题,但它让我发疯。我正在尝试在JavaFX中创建扫雷器(主要用于练习),但我甚至无法显示一个简单的矩形。我以前运行过一次游戏,但我试图使游戏更加抽象,因此更容易编码,但我遇到了不显示任何问题。 我消除了所有无关的代码,使其尽可能简单。我基本上是在尝试创建一个名为Box的具有特定颜色和大小的矩形,将框添加到窗格中,并显示窗格。为了使Box成为可以在窗格上显示的节点,我使Box

  • 假设我在程序中有一段代码: 有人建议我在调用消息之前检查消息的空值。getUserId()。 检查null有两种方法:第一种: 第二种方式: 我的问题是: 哪种方式对null检查更好?返回还是抛出异常? 为什么我们在这里需要空检查?如果我们不这样做,那么无论如何都会抛出。

  • 在JS中,如果我将一个字符串记录到控制台,它是否没有正确显示? 后果 那么为什么显示的是[object],而不是值呢?它就像是在附加字符串的情况下更改类型?

  • 我有财产课: 还有一种方法: 在类的构造函数我有: 为什么当我从object按键调用函数时。我收到一条未定义的消息,为什么变量在内部不可用: