Me di cuenta. Hice un pequeño error en el lado del cliente.
Aquí es el expample de trabajo de carga XHR con Formidable
Usted no necesita para establecer fronteras o cabeceras especiales.
cliente
var formData = new FormData();
var xhr = new XMLHttpRequest();
var onProgress = function(e) {
if (e.lengthComputable) {
var percentComplete = (e.loaded/e.total)*100;
}
};
var onReady = function(e) {
// ready state
};
var onError = function(err) {
// something went wrong with upload
};
formData.append('files', file);
xhr.open('post', '/up', true);
xhr.addEventListener('error', onError, false);
xhr.addEventListener('progress', onProgress, false);
xhr.send(formData);
xhr.addEventListener('readystatechange', onReady, false);
servidor
app.post('/up', function(req, res) {
var form = new formidable.IncomingForm();
form.uploadDir = __dirname + '/tmp';
form.encoding = 'binary';
form.addListener('file', function(name, file) {
// do something with uploaded file
});
form.addListener('end', function() {
res.end();
});
form.parse(req, function(err, fields, files) {
if (err) {
console.log(err);
}
});
});
Recibo el error "encabezado de tipo de contenido incorrecto, sin tipo de contenido". ¿No estoy seguro de cómo evitar esto? – wilsonpage
@pagewil Pruebe a establecer enctype = "multipart/form-data" en su
¿Podría compartir lo que en realidad era el problema del lado del cliente, que lo solucionó? – Alexander