在Spring中返回布尔值后没有收到json对象

时间:2017-03-30 11:54:45

标签: angularjs json spring httprequest

我不知道我是否做得对,但它到目前为止有效。

GetMapping应该生成一个json,但如果我只给它一个布尔值而没有Map类型,它究竟应该产生一个json?到底是什么回归?

@GetMapping(value = "/getIsTrackedHistory/{name}" , produces = "application/json")
public @ResponseBody boolean getIsTrackedHistory(@PathVariable("name") String name) {
    boolean isTracked = template.getIsTrackedHistory(name);
    return isTracked;
}

我的要求:

$http.get(localhostUrl + 'getIsTrackedHistory/' + $scope.name
.success(function (data) {
      console.log(JSON.stringify(data)); //prints just true or false, which doesn't look at all like a json object.

2 个答案:

答案 0 :(得分:1)

你在这里做的是绝对正确的。当你返回一个布尔值时,它将以json格式作为单个对象(作为布尔值)返回。 如果你返回一个包含更多属性的对象,那就像json格式一样。

答案 1 :(得分:1)

如果要返回键:值样式对象。 你必须返回地图或pojo。

例如

Map resultMap = new HashMap<>();
resultMap.put("success", true);
return resultMap;

然后你可以看到回复信息:{&#34; success&#34;:true}