【发布时间】:2018-01-17 07:34:24
【问题描述】:
我正在开发基于 Spring Data REST 的服务。由于我们使用 swagger(通过 SpringFox 生成)创建前端代码这一事实,我不得不停用 HAL 格式的返回,该格式可以正常工作,但有一个异常。
如果请求的结果是一个空列表,则响应如下所示
{
"links": [
{
"rel": "self",
"href": "http://localhost:9999/users"
},
{
"rel": "profile",
"href": "http://localhost:9999/profile/users"
}
],
"content": [
{
"rel": null,
"collectionValue": true,
"relTargetType": "com.example.User",
"value": []
}
]
}
我怎样才能得到一个空列表作为内容?
【问题讨论】:
-
嘿@stoetti,你找到解决方案了吗?我也面临同样的问题。
-
您好!对不起,我没有得到任何答案或找到服务器端解决方案,所以我们在客户端处理了对空响应的特殊处理。
-
哈,这也是我正在做的。我并没有真正理解这种行为,因为当 get /
没有返回任何结果并且没有任何内容可以返回时,它只会返回一个空的内容数组 []。对我来说,这确实是一个错误,因为它会导致不必要的缺乏一致性。感谢您在此@stoetti 上回复我 ;-) -
嘿,有什么发现吗?
-
没有,但我们没有进一步调查,因为默认的 HATEOAS 序列化响应是空的“嵌入式”集合
标签: spring spring-data-rest spring-hateoas