最近我在使用 Spring Data rest 时,我发现返回的资源内容是不带 ID 号的。
{
"_embedded": {
"books": [
{
"createTime": null,
"updateTime": null,
"userId": null,
"title": "Java",
"originTitle": null,
"translator": null,
"author": "w",
"cover": null,
"rating": null,
"summary": null,
"publisher": null,
"publishDate": null,
"pages": null,
"doubanId": null,
"state": null,
"isbn": null,
"_links": {
"self": {
"href": "http://127.0.0.1:9090/api/books/1"
},
"book": {
"href": "http://127.0.0.1:9090/api/books/1"
},
"reviews": {
"href": "http://127.0.0.1:9090/api/books/1/reviews"
}
}
}
]
},
"_links": {
"self": {
"href": "http://127.0.0.1:9090/api/books"
},
"profile": {
"href": "http://127.0.0.1:9090/api/profile/books"
}
},
"page": {
"size": 20,
"totalElements": 1,
"totalPages": 1,
"number": 0
}
}
去项目的 issues 看到作者写到 restfult api 就不该返回资源的 id,资源的_link 表名了这个资源的 id 。
说实话,如果这样设计在客户端的开发上会有些麻烦。
请问下这样有什么好处呢?
在客户端的开发如果要用_link 这样的资源标识,该怎么用呢?
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.