使用 FormData 序列化嵌套在数组中的对象是否不同?
Is serializing objects nested inside array differently using FormData?
我正在尝试使用 FormData() 序列化 Web 表单。我的后端是 Python 的 Cherrypy 服务器。
预期的 JSON 是这样的:
{
"price":1,
"quantity_left":100,
"packaging_weight":2,
"variant_names":[
{
"name_line":"苹果",
"is_primary_identifying_flag":"on"
},
{
"name_line":"apple"
}
]
}
但是,在序列化 var form_data = new FormData(this.inner_form);
并通过 FormData.append
手动添加数组后,JSON 变为:
{
"price":1,
"quantity_left":100,
"packaging_weight":2,
"variant_names":[object, Object]
}
FormData 不能像这样处理嵌套对象吗?
没有。 FormData 的值 must be a string or Blob:
The field's value. This can be a USVString
or Blob
(including subclasses such as File). If none of these are specified the value is converted to a string.
与其使用 FormData,不如考虑将整个对象字符串化,然后将其作为负载发送。或者,将作为对象的内部值字符串化(并在服务器上对其进行解码)。
我正在尝试使用 FormData() 序列化 Web 表单。我的后端是 Python 的 Cherrypy 服务器。
预期的 JSON 是这样的:
{
"price":1,
"quantity_left":100,
"packaging_weight":2,
"variant_names":[
{
"name_line":"苹果",
"is_primary_identifying_flag":"on"
},
{
"name_line":"apple"
}
]
}
但是,在序列化 var form_data = new FormData(this.inner_form);
并通过 FormData.append
手动添加数组后,JSON 变为:
{
"price":1,
"quantity_left":100,
"packaging_weight":2,
"variant_names":[object, Object]
}
FormData 不能像这样处理嵌套对象吗?
没有。 FormData 的值 must be a string or Blob:
The field's value. This can be a
USVString
orBlob
(including subclasses such as File). If none of these are specified the value is converted to a string.
与其使用 FormData,不如考虑将整个对象字符串化,然后将其作为负载发送。或者,将作为对象的内部值字符串化(并在服务器上对其进行解码)。