gpt4 book ai didi

javascript - Express js bodyparser post req.body 不起作用?

转载 作者:行者123 更新时间:2023-12-01 01:06:43 26 4
gpt4 key购买 nike

我尝试使用 Express js post 请求构建一个 api。我对 req.body 使用 body-parser 。但是在发送发布请求后,我无法收到任何仍在加载的消息,然后显示超时。我的问题在哪里,请看一下我的代码。我正在从 postman 测试它并在 header 内容类型 application/json 上使用。

const express = require('express');
const bodyParser = require('body-parser');
const config = require('./config/config.js').get(process.env.NODE_ENV);
const mongoose = require('mongoose');
const app = express();
mongoose.connect(config.DATABASE)
const {Book} = require('./models/book')

app.use(bodyParser.json())

// Post Book
app.post('api/book', (req,res)=>{
let book = new Book(req.body)

book.save((err, doc)=>{
if(err) return res.status(400).send(err);
res.status(200).json({
post:true,
bookId: doc._id
})
})
})

现在显示错误 - 无法发布/api/book但是当我尝试使用下面的代码时它的工作原理 -

const book = new Book({ name: 'Zildjian' });
book.save().then(() => console.log('data save'));

最佳答案

将路由从 api/book 更改为 /api/book - 添加前导 /

此外,它看起来可能会超时,因为它无法通过您的 cookie-parser 中间件。

您已经通过了该函数:

app.use(cookieParser)

...但是您需要调用它:

app.use(cookieParser())

您还需要导入它:

const cookieParser = require('cookie-parser')

...或者如果您不需要它,则将其完全删除。

我希望这会有所帮助。

关于javascript - Express js bodyparser post req.body 不起作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55563495/

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