Axios post 传参报400错误,error :Required Integer[] parameter ‘copyIDs‘ is not present spring boot

在vue 项目中,使用axios 调用后端接口,报类似下面的错误:

Required Integer[] parameter 'copyIDs' is not present spring boot 请求中包含数组参数

 

解决方案:


将下面链接的内容,给后端看看,让他修改一下,即可;

前端看不懂,直接给后端看下面的文章。大概意思就是把传的参数写到实体类中


链接:https://blog.csdn.net/leisure_life/article/details/82590912


内容如下:


spring boot 请求中包含数组参数
一开始接口定义成这样

public ApiResult creMission(@RequestBody Mission mission,@RequestParam Integer[] copyIDs)


请求参数是这样

{
    "missionTitle": "新增任务测试",
    "missionContent": "任务内容",
    "missionType": "1",
    "etc": "2018-10-01 18:30:00",
    "missionScore": "5",
    "executerID": "3",
    "deptID": "2",
    "mangerID": "2",
    "remake": "",
    "explain": "分值是5分,抄送刘光宗、李四",
    "copyIDs": [
        1,
        11
    ]
}

结果就这样了……

Required Integer[] parameter 'copyIDs' is not present


15:31:05.374 [http-nio-8181-exec-4] WARN  org.springframework.web.servlet.mvc.method.annotation.ExceptionHandlerExceptionResolver - Resolved exception caused by Handler execution: org.springframework.web.bind.MissingServletRequestParameterException: Required Integer[] parameter 'copyIDs' is not present

 

改进方法一:


请求报文不变,改接口,重新定义一个实体类,把数组参数作为它的一个属性


新定义一个MissionParam类,包含Mission的全部属性,外加copyIDs属性

 

接口定义成这样

public ApiResult creMission(@RequestBody MissionParam missionParam)

 

改进方法二:

请点击查看详情:https://blog.csdn.net/leisure_life/article/details/82590912

 

 

作者:doubleyong

博客:bugshouji.com (专门解决与收集bug的网站)

 

欢迎添加下面的 “公众号” ,可以第一时间获到文章推送 @_@

公众号

axios中使用post请求传参的方式有多种。引用\[1\]中的代码示例展示了一种常见的方式,使用FormData对象来传递参数。在这种方式下,可以通过调用`formData.append(key, value)`方法来添加参数。另外,还可以使用URLSearchParams来传递参数,这是引用\[2\]中提到的一种方式。在这种方式下,可以通过设置`Axios.defaults.headers.post\['Content-Type'\] = 'application/x-www-form-urlencoded'`来修改请求头的Content-Type。这样,参数会以键值对的形式拼接成字符串,并保存在请求体中。这种方式适用于后端接收参数的类型要求是键值对形式的情况。而如果后端接收参数的类型要求是json对象形式的,可以使用默认的Content-Type值`application/json`,将参数以json对象的形式传递,如引用\[3\]所述。 #### 引用[.reference_title] - *1* *3* [axiospost请求传参问题](https://blog.csdn.net/EdwardWH/article/details/107676773)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [axios post方式传递参数](https://blog.csdn.net/lianghecai52171314/article/details/106073810)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值