我正在尝试将文件上传到我的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-urlencodedmultipart/form-data的POST请求。

它并非设计用于处理单个文件的普通PUT。

如果要放置上传的JPEG,则只需阅读原始HTTP请求正文即可。您不需要解析它!

10-08 00:13