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

146
Vistas
Envíe un formulario html a Vanilla NodeJS sin módulos

Me preguntaba cómo puedo enviar un formulario HTML a mi servidor NodeJS y obtener la información enviada sin el uso de express, body-parser o cualquier otro módulo o npm.

Traté de buscarlo aquí en stackoverflow y busqué en Internet, pero no encontré a nadie que enseñara cómo enviar datos desde un formulario html a Vanilla NodeJS (usando las API de nodo)

Me he encontrado con muchas personas que usan expressJS para hacer esa tarea. y entiendo por qué, pero quiero profundizar y comprender mejor la API central de NodeJS.

pero desafortunadamente la documentación de la API de NodeJS no es tan buena, es muy confusa y difícil de navegar y algunas funciones no se explican qué argumentos toman y cómo funcionan.

He escrito el siguiente código y no estoy seguro de cómo ir desde allí:

SERVER.JS

 const fs = require('fs'); const http = require('http'); const PORT = 3000; let server = http.createServer((req,res) =>{ if (req.url == '/'){ fs.readFile('./views/index.html', 'utf-8',(err,data) => { if (err) { console.log(err); res.end(); } res.write(data); res.end(); }); }else{ res.writeHead(404,'Page not found'); res.end(); } }).listen(PORT) console.log(`Server is running on port ${PORT}, vist http://localhost:${PORT}`);

index.html

 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Document</title> </head> <body> <h1>Is your username taken?</h1> <form method="POST" action="/"> <input type="text" name="USER"> <input type="submit" value='Check'> </form> </body> </html>

Estructura del archivo:

 views | |_ index.html server.js
about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

El objeto req tendrá una propiedad de method que le dirá si es una solicitud POST.

Si es así, dado que es un flujo legible, puede escuchar data y end eventos en él para leer los datos en el cuerpo. (Este es un enfoque bastante estándar para Node.js donde puede agregar una variable de cadena en cada evento de data y luego hacer algo con la cadena terminada en el evento end siempre que sus datos entrantes no sean demasiado grandes. Un sistema robusto necesitaría un caso especial de solicitudes grandes para evitar ataques triviales de denegación de servicio que hacen que el servidor se quede sin memoria).

Entonces tendrás que analizarlo. Como no tiene un atributo enctype , tendrá el formato application/x-www-form-urlencoded que se describe en la descripción de una solicitud POST de MDN.

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