Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

210
Vistas
A pesar de permitir todas las solicitudes de CORS, el cuerpo de mi solicitud se muestra vacío. ¿Porqué es eso?

Soy 90% esto es un problema de CORS, pero incluso después de seguir todos los consejos que encontré en línea, no he podido resolverlo.

Estoy tratando de hacer una solicitud POST desde mi interfaz (para hacer las cosas más rápido, acabo de hacer solicitudes desde la consola). Aquí hay una solicitud que estoy haciendo:

 fetch('http://localhost:4000/api/post', { method: 'POST', mode: 'cors', Headers: { 'Content-Type': 'application/json' }, body: JSON.stringify({path: "meep"}) })

En mi aplicación Node/Express, estoy registrando en la consola el req.body, pero no obtengo nada a menos que envíe la solicitud desde Paw (alternativa de Postman).

Aquí está mi archivo index.js principal

 const express = require('express') const mongoose = require('mongoose') const routes = require('./routes/routes') const cors = require('cors') require('dotenv').config() const app = express() app.use(cors()); app.use(express.json()) app.use(function (req, res, next) { res.header("Access-Control-Allow-Origin", "*"); res.header("Access-Control-Allow-Headers", "Origin, X-Requested-With, Content-Type, Accept"); res.header("Access-Control-Allow-Methods", "*") next(); }); const mongoString = process.env.DATABASE_URL const port = process.env.PORT || 4000 mongoose.connect(mongoString) const database = mongoose.connection database.on('error', (erorr) => { console.log(error) }) database.once('connected', () => { console.log('Database connected.') }) app.listen(port, () => { console.log(`Server listening at ${port}`) }) app.use('/api', routes)

Y aquí está mi archivo de rutas:

 const express = require('express') const router = express.Router() const Model = require('../models/model') const cors = require('cors') router.use(cors()); router.use(express.json()) router.use(function (req, res, next) { res.header("Access-Control-Allow-Origin", "*"); res.header("Access-Control-Allow-Headers", "Origin, X-Requested-With, Content-Type, Accept"); res.header("Access-Control-Allow-Methods", "*") next(); }); // Post Method router.post('/post', async (req, res) => { console.log(req.body) const data = new Model({ isFeatured: req.body.isFeatured, path: req.body.path, /* recipe: { ingredients: req.body.recipe.ingredients, amount: req.body.recipe.amount, notes: req.body.recipe.notes } */ }) try { const dataToSave = await data.save() res.status(200).json(dataToSave) } catch (error) { res.status(400).json({ message: error.message }) } }) module.exports = router

¿Alguna idea de lo que podría estar haciendo mal?

about 4 years ago · Santiago Gelvez
1 Respuestas
Responde la pregunta

0

de @heiko-theißen:

Reemplace los Headers con headers en su comando de fetch . Los Headers se ignoran, por lo que no está enviando Content-Type: application/json y express.json() no entra en acción

Esto lo arregló.

about 4 years ago · Santiago Gelvez Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda