当前位置: 首页 > 知识库问答 >
问题:

FormData中的Spring图像、表单值和对象列表

江丰羽
2023-03-14

我有RestController终结点:

Mono<A> editA(@PathVariable String id, @Valid A a)
class A {
  private MultipartFile imageToSave;
  private String name;
  private String otherString;
  private ArrayList<B> bList;
}

类B看起来与类A相似(但只包含字符串字段)。

前端客户机(React使用Axios)发送表单值(两个字符串、图像文件)。我使用javascript FormData对象将这些值发送到一个请求中,并且运行良好。

但我还想发送一个列表B对象。所以我尝试添加一个列表B对象到FormData并发送它。

共有1个答案

危飞跃
2023-03-14

我在使用Laravel中的formData传递错误时遇到了类似的错误。结果是不能将formData API与数组一起使用。看看下面的url:https://developer.mozilla.org/en-us/docs/web/api/formdata/append它只接受字符串或blob。对于你的解决方案,你必须像我做的那样。

  let formData = {};
            for (var property in this.form) {
                if (this.form.hasOwnProperty(property)) {
                      //  formData.append(property,this.form[property]);
                        formData[property] = this.form[property];

                }
            }

在这里,我所做的基本上只是从表单输入属性构建object,然后使用下面的代码通过Axios。

axios({
                    method: 'post',
                    url: url
                    data : formData,
                    headers:{
                        'Content-Type': 'application/json',
                    }
                }).then((response) => { ... });
 类似资料:
  • 表单概述 表单(<form>)用来收集用户提交的数据,发送到服务器。比如,用户提交用户名和密码,让服务器验证,就要通过表单。表单提供多种控件,让开发者使用,具体的控件种类和用法请参考 HTML 语言的教程。本章主要介绍 JavaScript 与表单的交互。 <form action="/handling-page" method="post"> <div> <label for="na

  • 是否可以将多部分表单的内容捆绑到相应的控制器方法中的单个对象中? 即。如何转换方法 转换为具有以下签名的方法: 其中包含multipartFile和附加参数:

  • 我有以下列表,里面是另一个列表,然后是字符串列表 <代码>列表 示例 除了执行嵌套循环并最终替换列表之外,还有更好的方法吗?也许有溪流?

  • 使用: 它按照预期工作,所以Spring显然不喜欢验证事物列表(尝试使用数组,但也不起作用)。 有人知道缺了什么吗?

  • 假设有一个类: ...您有一个实例列表,即

  • 我有一份包含订单项目列表的订单 如果在这个列表中我有以下项目 我想计算订单所有者名称相同的值之和。 e、 g.如果所有者名称为“John”,则返回417.00,如果名称为“Doe”,则返回19.00。 我怎么能通过小溪Java呢?非常感谢