代码之家  ›  专栏  ›  技术社区  ›  Ilijanovic

将带有文件的对象发送到后端

  •  1
  • Ilijanovic  · 技术社区  · 3 年前

    因此,我有一个问题,我有这样一个对象:

    {
       name: "",
       layers: [{
          name: "",
          traits: [{
             name: "",
             file: File
          }]
       }]
    }
    

    问题是我不能 JSON.stringify(data) 然后做一个 formData.append() 并将其发送到后端,因为 File 不能烧焦。

    我还看到了发送一系列图像的答案,比如:

    formData.append("image", file1)
    formData.append("image", file2)
    ...
    

    但在后端,我将有问题把图像放回正确的层和正确的特征索引。

    有人知道实现这个目标的最佳方法是什么吗?

    1 回复  |  直到 3 年前
        1
  •  1
  •   Quentin    3 年前

    为每个文件指定一个唯一的名称(的第三个参数 append() 让您指定它)。使用这些名称而不是文件创建数据结构。将数据结构串行化为JSON。将JSON作为参数传递到FormData对象中。