app.post no funciona en el cartero y muestra el resultado en formato JSON y también el middleware muestra un error en el cartero. ¿Qué estoy haciendo mal en esto? ¿Hay algún nuevo código de middleware introducido recientemente?
// importing import express from "express"; import mongoose from "mongoose"; import Messages from "./dbMessages.js"; //app config const app = express(); const port = process.env.PORT || 9000; //middleware app.use(express.json()); //DB config const connection_url = "mongodb+srv://admin:0ZKon3XRmT0SWkal@cluster0.7pljv.mongodb.net/whatsappdb?retryWrites=true&w=majority"; mongoose.connect(connection_url, { // useCreateIndex: true, // useNewUrlParser: true, // useUnifiedTopology: true, }); //???? //api routes app.get("/", (req, res) => res.status(200).send("hello world")); app.post("/messages/new", (req, res) => { const dbMessage = req.body; Messages.create(dbMessage, (err, data) => { if (err) { res.status(500).send(err); } else { res.status(201).send(data); } }); }); //listen app.listen(port, () => console.log(`Listening on localhost:${port}`)); dbmessages.js is given below
import mongoose from "mongoose"; const whatsappSchema = mongoose.Schema({ message: String, name: String, timestamp: String, received: Boolean, }); export default mongoose.model("messageContent", whatsappSchema);No está creando la instancia de un modelo.
app.post("/messages/new", (req, res) => { const dbMessage = req.body, messageModel = new Messages(); message.Modelmessage = req.body.Modelmessage; message.Modelname = req.body.Modelname; messageModel.timestamp = req.body.timestamp; messageModel.received = req.body.received; messageModel.save().then(data => { res.status(201).send(data); }).catch((e) => { res.status(500).send(err); }) });