Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

219
Visualizações
El valor de req.body es una API REST indefinida

Estoy creando una aplicación REST API. Tengo un front-end (Nuxt.js) y una API (Express.js), y estoy tratando de enviar datos desde el front-end a la API. Api funciona en el puerto 3001 y al frente en el puerto 8010.

Entonces, el envío de datos se ve así:

Función en el frente:

 methods: { async postTip() { const test = await postTipFunc({ content: this.tipContent }) } }

Aquí está la función postTipFunc (project_front/api/index.js) :

 import axios from "axios"; process.env.NODE_TLS_REJECT_UNAUTHORIZED = '0' const api = axios.create({ baseURL: 'http://localhost:8010/', headers: { 'Content-Type': 'application/json' } }) export const postTipFunc = async payload => { const { data } = await api.post(`pt`, payload) return data }

Aquí está el punto final que va al back-end (project_front/server/routes/index.js) :

 process.env.NODE_TLS_REJECT_UNAUTHORIZED = '0' const { Router } = require('express') const axios = require('axios') const dotenv = require('dotenv') dotenv.config() const api = axios.create({ baseURL: "http://localhost:3001/", }) const router = Router() router.post(`/pt`, async (req, res) => { try { const data = await api.post(`/post-tip`, req.body) res.json(data.data) } catch (e) { console.log(e) } }) module.exports = router

Y finalmente back-end (prodect_api/src/routes/index.js) :

 const router = require('express').Router(); const wrapAsync = require('./../middlewares/async') const tipController = require('../controllers/tip') router.post( "/post-tip", wrapAsync(tipController.postTip) ) module.exports = router;

En realidad, esa función tipController.postTip solo recibe datos y los muestra en la consola, por lo que no tiene sentido mostrarlos.

Además, si puede ayudar, console.log() muestra datos solo aquí: project_front/api/index.js . Después de ese punto todo está undefined

Entonces, ¿cómo puedo solucionarlo?

about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

Bien, aquí está la respuesta, para que las cosas funcionen, necesita instalar body-parse en su API. Así:

 const bodyParser = require("body-parser"); app.use(bodyParser.json()); app.use(bodyParser.urlencoded({extended: true}));

¡Espero que ayude a alguien!

about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda