下面的代码使用的是Get请求,但是使用了@RequestBody进行数据的封装,导致错误的原代码如下所示:
@GetMapping("findAllByPageInterface")
public @ResponseBody ApiResponse findAllByPage(@RequestBody findStockOutReq stockOutReq) {
//判断获取的页面是否为空
if(stockOutReq.getLimit() <= 0) {
stockOutReq.setLimit(10);
}
if(stockOutReq.getPage() <= 0) {
stockOutReq.setPage(1);
}
ApiData data = null;
try {
data = service.findAllByPage(stockOutReq);
} catch(Exception e) {
logger.error("出库单数据查询异常,异常消息:"+e.getMessage());
return ApiResponse.ofSuccess("数据查询异常,稍后请重试!");
}
return ApiResponse.ofSuccess(data);
}
因为Get请求发送数据的方式不是json格式,所以当我们使用@RequsetBody封装Get请求的数据时就会出现无法获取到数据的情况,我们可以做如下修改就可以解决:
@GetMapping("findAllByPageInterface")
public @ResponseBody ApiResponse findAllByPage(findStockOutReq stockOutReq) {
//判断获取的页面是否为空
if(stockOutReq.getLimit() <= 0) {
stockOutReq.setLimit(10);
}
if(stockOutReq.getPage() <= 0) {
stockOutReq.setPage(1);
}
ApiData data = null;
try {
data = service.findAllByPage(stockOutReq);
} catch(Exception e) {
logger.error("出库单数据查询异常,异常消息:"+e.getMessage());
return ApiResponse.ofSuccess("数据查询异常,稍后请重试!");
}
return ApiResponse.ofSuccess(data);
}
在上面的代码中我将@RequsetBody注解去掉,也是可以将数据封入对象的
原文链接:https://blog.csdn.net/qq_40929531/article/details/88559563