我将 ID Null 获取到后端,这是从前端传递的参数 this.overAllSummery = function(offset,limit,search,colName,order,id){ var url = 'api/dashboard/summary/' if(offset!= undefined){ url=(url.indexOf("?") > -1)?url+"&offset="+offset:url+"?offset="+offset; } if(limit != undefined){ url=(url.indexOf("?") > -1)?url+"&limit="+limit:url+"?limit="+limit; } if(search!=undefined && search!=""){ url=(url.indexOf("?") > -1)?url+"&search="+search:url+"?search="+search; } if(colName != undefined){ url=(url.indexOf("?") > -1)?url+"&colName="+colName:url+"?colName="+colName; } if(order != undefined){ url=(url.indexOf("?") > -1)?url+"&order="+order:url+"?order="+order; } if(id != undefined){ url=(url.indexOf("?") > -1)?url+"&id ="+id:url+"?id ="+id; } alert(id); var promise = $http({ method : 'GET', url : url, headers : { 'Content-Type' : 'application/json' }, cache : false }).then(function (response) { return response; }); return promise; };上面的整个是使用AngularJS的前端服务并传递URL来调用后端,当我传递不同的参数时,我将所有这些参数都传递给后端,除了ID,并且基于ID我必须从数据库中获取记录。 @RequestMapping(value = "/summary", method = RequestMethod.GET, produces="application/json")public ResponseEntity<List<OverAllSummery>> overAllSummery(HttpServletRequest request,@RequestParam(value="offset",required=false) Integer offset,@RequestParam(value="limit",required=false) Integer limit,@RequestParam(value="search",required=false) String search,@RequestParam(value="colName",required=false) String colName,@RequestParam(value="order",required=false) String order,@RequestParam(value="id",required=false) Long id){以上是我正在使用的其余控制器,调用正在传递到后端以处于调试模式,但 ID 为空,我在前端控制台中得到 404。
3 回答

开心每一天1111
TA贡献1836条经验 获得超13个赞
@RequestMapping(value = "dashboard/summary" ...)
您没有在 requestMapping 中添加 id 作为参数
添加{id}@RequestMapping(value = "dashboard/summary/{id}" ...)
你调用的apidashboard/summary/1

catspeake
TA贡献1111条经验 获得超0个赞
HTTP 中的错误 404 绝对意味着服务器(后端)不知道您正在尝试访问的 url。由 catch 块产生的内部服务器错误是 HTTP 500,因此后端没有产生异常。因此,首先要检查的是您实际尝试访问的 URL。顺便尝试使用'/api/dashboard/summary',而不是现在在前端使用的。
添加回答
举报
0/150
提交
取消