我可以先处理字段然后处理Nodejs busboy中的文件

时间:2015-01-06 13:04:18

标签: node.js busboy

我正在使用Busboy上传包含文件和一些文本字段的表单数据。

每件事情都很好,我能够获得帖子参数和文件。

我怎样才能做到这一点: 首先,我需要处理字段数据并保存在Db中并处理文件并在DB中的相同记录中更新。

busboy首先处理文件然后处理字段。

req.pipe(req.busboy);
req.busboy.on('file', function (fieldname, file, filename) {
    console.log("Uploading: " + filename);
    console.log("fieldname: "+fieldname);
});
req.busboy.on('field', function(fieldname, val, fieldnameTruncated, valTruncated) {
    var jsondata = JSON.parse(val);
});

任何建议

2 个答案:

答案 0 :(得分:4)

简单:只需将字段放在表单中的文件之前。例如:

<form>
  <input type="text" name="foo">
  <input type="text" name="bar">
  <input type="file" name="baz">
</form>

答案 1 :(得分:0)

busboy将按照我们添加formData的顺序读取数据

form.append('field',value);
form.appnd('file',file);