我正在尝试将文件上传到我的NodeJS服务器。
我目前收到错误消息:Error: bad content-type header, unknown content-type: image/jpeg
“ image / jpeg”是有效的mime类型,为什么会出现此错误?
码:
var formidable = require("formidable");
var form = new formidable.IncomingForm();
form.maxFieldsSize = 2 * 1024 * 1024;
form.parse(req, function (err, fields, files) {
//if (err) {
// res.writeHead(412);
// res.end();
//}
console.log(err, fields, files);
});
客户:
var xmlHttp = new XMLHttpRequest();
xmlHttp.open("PUT", "", false);
xmlHttp.send(fileInput.files[0]);
最佳答案
Formidable是“用于解析表单数据(尤其是文件上传)的node.js模块”。
它旨在处理格式为application/x-www-form-urlencoded
或multipart/form-data
的POST请求。
它并非设计用于处理单个文件的普通PUT。
如果要放置上传的JPEG,则只需阅读原始HTTP请求正文即可。您不需要解析它!