前端方法
addComment() {
this.$axios.post('/api/comments/new',
{ user: 'jubin4324', content: this.textarea })
.then((response) => {
console.log(response.message)
})
.catch((response) => {
alert('Error occurred')
})
}
后端
router.post('/comments/new', (req, res) => {
let db = req.db
let currentDate = new Date()
console.log(req)
let user = req.body.user
let new_comment = new Comment({
user: user,
content: req.body.content,
created_at: currentDate
})
new_comment.save((error) => {
if (error) {
console.log(error)
}
res.send({
success: true,
message: 'Comment saved Successfully'
})
})
})
如您所见,我正在尝试使用nuxt.js制作发布应用。
当我在Vue.js中发布应用程序时,完全没有问题。但是,现在我坚持使用“ axios post”。
在chrome开发人员工具中,网络页面正常显示请求有效负载。单击提交按钮后,投寄方法正常运行。但是,我无法在后端访问此有效负载。 (第三张图片)。
我最初使用例如[req.body.user,req.boy.title,…]访问有效负载 但是,当我在服务器端打印该“ req”时,没有req.body。因此会发生错误。
如果我像在服务器端那样进行硬编码,则发帖没有问题
let new_comment = new Comment({
user: ‘dalkfjdklf’,
content: ‘afkljldfjaklfj’,
created_at: new Date() })
帖子成功保存,但是正如大家所知,这是不正常的。 我希望传递表单数据,并且应该将其保存。
请让我解决这个问题...