Restful 查询URL设计
在后台开发中,我为用户分组提供一个Restful接口,涉及到这两个查询:
1.返回所有的分组(需要分页)
2.返回所有的分组(不需要分页,每一项需要多返回一些数据)
就如我当前希望查询的是item
,针对第一种我的URL是/item?page=1&size=10
,那么第二种我又该怎么设计呢?(不仅仅是分不分页的问题,还涉及到这两者虽然都是查询item
,但是需要返回的内容是不同的)
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
开发接口就是为了提供给他人使用,所以接口设计一定要友好。
在Restful接口设计中,通常请求资源接口使用资源的名词复数, 如:
https://api.github.com/users/tinyking/repos
此restful接口为github提供的查询资源库的。
所以建议接口可设计为
xxx/items
xxx/items?page=1&size=10
另外问题中提到,两个接口返回的内容不同,基于接口的友好性,建议再设计一个接口用于特殊查询。
当然,如果是使用的spring data 的话, 可以考虑使用projection特性。具体可参考spring data的参考文档
后台可以分类吧,比如这个你设计的链接含有page和size的数据,根据前端传回的数据里是否含有page和size分类,返回不同的内容