En el nodo js, ​​cómo conectar el método de publicación al enviar el formulario

este es mi formulario, ¿cómo puedo conectarme con el nodo js? al enviar este formulario

<form id="fileupload" action="/es/file-upload" method="POST" enctype="multipart/form-data"> 
<input id="fileToBeUploaded" type="file" name="thumbnail">
<input type="submit" value="upload"> 
</form> 

lado del servidor

var http = require("http");
var url = require("url");

http.createServer(function(req, res) {
  switch (url.parse(req.url).pathname)
  { 
    case '/': console.log('server side methodcalled'); 
      break;
    case '/file-upload': console.log('server side method called');
      break; 
    default: 
      console.log('server side method called');
      break;
  }
}); 

preguntado el 25 de septiembre de 12 a las 06:09

2 Respuestas

En su programa de servidor nodejs puede verificar el método de solicitud y la acción.

if((request.method == 'POST') && (request.url == '/file-upload') {
  .......
}

Actualizado -

var http = require("http");
var url = require("url");
var fs = require("fs");

http.createServer(function(req, res) {
  switch (url.parse(req.url).pathname)
  { 
    case '/': 
      console.log('server side methodcalled'); 
        fs.readFile(__dirname + '/index.html',
          function (err, data) {    
            res.writeHead(200);
            res.end(data);
          });
        break;
    case '/file-upload': 
      console.log('server side method called');
      break; 
    default: 
      console.log('server side method called');
      break;
  }
}).listen(3000);

Ahora puedes conectarte a localhost:3000

Respondido el 25 de Septiembre de 12 a las 08:09

Agregué un programa del lado del servidor llamado upload.js ... en el que agregué la línea anterior, pero al enviar el formulario no llega al lado del servidor. - user1629448

será fácil de depurar si puede publicar su programa de servidor y cliente aquí - vinagre

Para implementar la carga de archivos, deberá leer el cuerpo de la solicitud y analizar las distintas partes. Esto puede ser complicado, por lo que le sugiero enfáticamente que use un módulo existente como formidable, o algo que lo invoque detrás de escena como connect.bodyParser() o express.bodyParser().

Respondido el 26 de Septiembre de 12 a las 13:09

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.