在FormData中发送json

时间:2017-11-25 15:29:21

标签: javascript json multipartform-data form-data

我可以像在JSON中那样在FormData中发送多级javascript对象吗?

例如:

{
     items: [
         {'title': 'first', 'amount': 20},
         {'title': 'second', 'amount': 3}
     ]
}

为了通过FormData发送它,我必须这样做

const data = new FormData;
for(let i = 0; i < obj.items.length; i++) {
    data.append(`items[${i}][title]`, obj.items[i]['titlte']);
    data.append(`items[${i}][title]`, obj.items[i]['titlte']);
}

如果我只是

data.append(`items[]`, obj.items);

然后服务器只能看到&#39; [对象]&#39;

我无法发布JSON,因为除了这些项目,我还会发送一些文件。

1 个答案:

答案 0 :(得分:0)

尝试发送data.append('items[]', JSON.stringify(obj.items));