来自表单的NodeJS文件

时间:2017-06-07 14:38:04

标签: javascript html node.js forms

我试图以我试图写的形式处理NodeJS的文件上传输入时遇到了一些麻烦。表单的HTML是自动生成的,输入的标签设置正确:

<input name="attachments" type="file" multiple="">

通过以下代码解析表单数据并将其提交给节点服务器:

$('form').submit((e) => {
  e.preventDefault();

  const formData = new FormData(this);

  $.ajax({
    type: 'POST',
    url: '/tickets',
    cache: false,
    contentType: false,
    processData: false,
    data: formData,
    success: null,
    error: null
  })

表单数据是发送到服务器的对象,其他所有字段都是易于解析的字符串。但是,这是我遇到问题的地方,因为文件附件字段返回一个Buffer对象:

<Buffer 89 50 4e 47 0d 0a 1a 0a 00 00 00 0d 49 48 44 52 00 00 02 3f 00 00 01 ea 08 06 00 00 00 eb b7 2f 36 00 00 00 01 73 52 47 42 00 ae ce 1c e9 00 00 00 04 ... >

由于我的最终目标是将这些附加文件上传到Zendesk和Jira,因此这两个API都需要文件路径或fs.readStream对象,我似乎无法从缓冲区获取。如何以正确的方式将上传的文件传递到服务器?我几乎肯定有一个更好的方法来解决这个问题,任何帮助都会受到赞赏。

0 个答案:

没有答案