JAVASCRIT, REACT, Node.js Como puede ver en el código javascript, estoy tratando de agregar algo en el lado del servidor usando el método de publicación, pero no se puede publicar en el servidor. Qué puedo cambiar en mi código.**
const express = require('express'); const cors = require('cors'); const { MongoClient, ServerApiVersion, ObjectId } = require('mongodb'); require('dotenv').config() const app = express(); app.use(cors()); app.use(express()); app.post('/items', async (req, res) => { const newItem = req.body; console.log(newItem); const result = await laptopCollection.insertOne(newItem); res.send(result); })Creo que me falta en el middleware
app.use(cors()); app.use(express());Creo que el middleware correcto es:
app.use(cors()) app.use(express.json())Publicar con función asíncrona
async function run() { try { await client.connect(); const laptopCollection=client.db('database_name').collection('collection_name'); app.post('/items', async (req, res) => { const newItem = req.body; console.log(newItem); const result = await laptopCollection.insertOne(newItem); res.send(result); }) // Add New Post } finally { // await client.close(); } } run().catch(console.dir);app.use(express()) no puede analizar las solicitudes JSON entrantes y tampoco puede poner los datos analizados en req.body.To resolver el problema, escriba la función como
app.use(express.json()) También te olvidas de importar async function . Debe proporcionar estos códigos:
async function run() { try { await client.connect(); const laptopCollection=client.db('database_name').collection('collection_name'); app.post('/items', async (req, res) => { const newItem = req.body; console.log(newItem); const result = await laptopCollection.insertOne(newItem); res.send(result); }) }Tal vez la forma correcta es:
app.use(cors()) app.use(express.json())