【发布时间】:2020-08-21 15:23:36
【问题描述】:
我有一个需要转换的对象。我正在尝试将对象转换为FormData 以上传文件
对象:
obj{
a:
{
a1: 'test1',
a2: 'test2'
}
b:
{
b1: 'test3',
c1: 'test4',
}
}
转换为:
{
obj[a][a1]: test1,
obj[a][a2]: test2,
obj[b]: binarydata // I want to convet this to binary data
}
我现在有什么不工作:
const formData = new FormData()
Object.keys(object).forEach(key => formData.append(key, object[key]));
我不是要展平阵列。我正在尝试将其转换为像
这样的对象obj[key1][key2][..]: value
【问题讨论】:
-
我不是要扁平化数组; flatten 数组执行类似这样的操作flatten([[1, 2, 3], [4, 5]]); // [1, 2, 3, 4, 5] 展平([[[1, [1.1]], 2, 3], [4, 5]]); // [1, 1.1, 2, 3, 4, 5] 这不是我想要的
-
一种更简单的方法可能是将对象转换为 JSON,并将其放入单个
FormData字段中,同时使用其他字段进行文件上传。 -
stackoverflow.com/questions/43334542/… 展示了如何做到这一点。
标签: javascript