"Required int parameter 'id' is not present" 报错400

本文详细解析了Requiredintparameter'id'isnotpresent错误的原因及解决方案,涵盖请求参数错误检查、注解配置、前端参数一致性、类型匹配及必要性验证,适用于使用@RequestParam注解的Spring MVC或RESTful API。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

报错原因: 请求参数存在错误.

(1) 网页调用接口时, 报错 “Required int parameter ‘id’ is not present”,
主要原因是: 请求参数存在错误

简单的说, 请求参数有问题,可以先检查以下几个方面:
    1 请求参数的名称是否一致 
    2 请求参数的类型是否一致
    3 请求参数是否必须要有
   

   
第 1 种 和 第 2 种错误只要细心核对即可.
第 3 种错误是由请求参数注解 @RequestParam引起的.

controller类中,经常会使用请求参数注解@RequestParam
如下:
@AuthSession
@RequestMapping(value = "/updateUser", method = RequestMethod.POST)
public String updateUser( @RequestParam(value= "id") int id,
                          @RequestParam(value = "userId", defaultValue = "001", required=false ) String userId) {
                  //代码....
}

原因:  可以通过required=false 或者 true来要求 ; @RequestParam 配置的前端参数是否一定要 .
       required=false  表示不传的话,会给参数赋值为null,
       required=true   请求注解中没写就是默认true, 就是这个参数必须要有值, 
       				   若是没有就报"Required int parameter 'id' is not present" 错误

(2) 在使用postman调用接口的时候, 参数不正确,也会报400, 与业务代码无关.

简单的说, 也是请求参数错误, 一般也是这几种情况:
	 1 请求参数的名称是否一致 
     2 请求参数的类型(格式)是否一致
     3 请求参数是否必须要有
     4 请求头的信息是否符合要求

postman报错如下:
在这里插入图片描述

这里明显的是请求头的格式不符合要求.

错误原因: header里有Content-Type :  application/json,,需要用 x-www-form-urlencoded 格式传,
         而用body传参则会报错 "Required int parameter 'id' is not present"  400
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值