$scope.getProjectDetails = function(theId){
$http.get('${pageContext.request.contextPath}/api/project', {params: {theId}})
.then(function(response){
$scope.project = response.data;
});
}
这个人种:
GET http://localhost:8080/editor-application/api/project?theId=1 404
春天休息要:
http://localhost:8080/editor-application/api/project/1
控制器:
@GetMapping("/project/{theId}")
public Project getProject(@PathVariable int theId) {
return editorService.getProject(theId);
}
如何使他们彼此交谈?
答案 0 :(得分:2)
您试图将变量作为get参数发送,但在后端,您希望将其作为路径变量。可以有两种解决方案:
@GetMapping("/project")
public Project getProject(@RequestParam int theId) {
...
}
无需修改AngularJS代码。
$http
请求,以将变量作为路径变量发送。$http.get('${pageContext.request.contextPath}/api/project/' + theId)
.then(function(response){
...
});
在这种情况下,控制器不需要任何修改。