从 nodejs 中的多部分请求中检索 JSON 对象

Retrieving JSON object from a multipart request in nodejs

本文关键字:检索 JSON 请求 对象 多部 nodejs      更新时间:2023-09-26
var form = new formidable.IncomingForm();
form.parse(req, function(err, fields, files) {
    if (err) {
        res.status(200).send('parsing error');
    }
});
var jsonObject;
var imageArray = [];
form.on('file', function(field, file) {
    console.log(file);
    if (file.type == 'application/json') {
        jsonObject = JSON.parse(fs.readFileSync(file.path, 'utf8'));
    } else if (file.type == 'image/jpeg') {
        imageArray.push(file.path);
    }
})

我正在使用 veridable 来处理 node 中的多部分请求.js 从我的 iOS 应用程序发出,该请求通常包含"n"个图像和一个关联的 JSON 对象,强大的中间件将 JSON 视为文件并将文件存储在临时下载位置并提供文件的路径,代码"jsonObject = JSON.parse(fs.readFileSync(file.path, 'utf8'((;" 读取文件并解析为 JSON 对象。这是它应该工作的方式,还是有更好的方法,可以消除从磁盘写入和读取多余的文件,并直接提供解析的 JSON obj。

PS - node.js的新手,整个后端系统的新手,有一个非常糟糕的强迫症。

Formidable(以及几乎任何其他节点形式的解析模块(只有在Content-Disposition标头值中设置了filename时才会将特定部分视为文件(或者如果Content-Type application/octet-stream(。