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

183
Vistas
¿Por qué express app.post no muestra mi vista?

He visto la misma pregunta publicada, pero no hay muchas respuestas útiles. Me gustaría mostrar la página de bienvenida una vez que haya hecho el contenido de app.post, pero no pasa nada.

Sé que es válido porque me dará un error si introduzco una ruta no válida, pero simplemente no hará lo que me gustaría.

 app.get('/', function (req, res) { res.render('Welcome') }) app.post('/makepost', function (req, res) { //do some things res.render('Welcome'); })

En la Vista, uso esto para llamar a app.post.

 fetch('/makepost', { method: 'POST', headers: { 'Content-Type': 'application/json', }, body: body, }
about 4 years ago · Juan Pablo Isaza
2 Respuestas
Responde la pregunta

0

Cuando realiza una llamada Ajax usando fetch() desde su Javascript en el navegador, el resultado de esa llamada ajax simplemente regresa a su Javascript. El navegador no representa ni muestra nada automáticamente.

Por lo tanto, si desea que cambie el contenido que se muestra, debe cambiar window.location para indicarle al navegador que vaya a una nueva página web o debe tomar el resultado de la operación fetch() e insertarlo en el que se muestra actualmente. página de alguna manera.

Un POST solo se mostrará automáticamente en el navegador si proviene de una publicación de formulario enviada por el navegador donde el navegador envía el formulario POST a su servidor, no a su Javascript. En ese caso, tomará el resultado del formulario POST y lo mostrará.

Consulte ¿Cómo redirigir correctamente en NodeJS/ExpressJS? para alguna explicación adicional.

Nota: Puede, desde su Javascript, llamar a form.submit() o form.requestSubmit() donde form es el objeto DOM para su formulario y estos funcionarán de manera similar al usuario final que presiona un botón de envío y el navegador mostrará lo que sea respuesta que el servidor devuelve después de procesar el formulario POST.

about 4 years ago · Juan Pablo Isaza Denunciar

0

Si simplemente desea redirigir al usuario a la página de inicio después de la publicación, puede hacerlo:

 app.post('/makepost', function (req, res) { //do some things res.redirect('/'); })

si desea obtener más información sobre los motores de renderizado y visualización, consulte la documentación de express: https://expressjs.com/pt-br/guide/using-template-engines.html

y esta publicación en geekforgeeks.com: https://www.geeksforgeeks.org/express-js-res-render-function/

un resumen para usted, debe instalar un motor de vista como ejs, crear una carpeta llamada vistas y poner sus páginas en esta carpeta y renderizarlas con el mismo nombre que eligió. Le recomiendo que use express-generator para automatizar esta tarea: https://expressjs.com/pt-br/starter/generator.html

otro consejo es representar sus páginas solo en métodos de obtención, ya que el objetivo del método de publicación es enviar datos al servidor y no obtener datos o páginas. ¡Espero haberte ayudado!

about 4 years ago · Juan Pablo Isaza 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