This is noob question but I am new to it. Req.body is undefined. I tried without body-
parser and with body-parser, I keep getting the same result I tried all solutions
available in StackOverflow but I keep getting the same result.
This is my client side code:
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,
})
}
And this is my NodeJs code:
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)
})