【发布时间】:2018-02-24 07:20:08
【问题描述】:
在 REST API 中使用 * 作为资源 ID 是否明智?我想用它来搜索。我正在使用 RESTEasy 开发我的网络服务。
假设我有资源是用户并且用户有姓名和年龄。然后我的 REST API 看起来像:
/users/{id}/name
/users/{id}/age
现在,如果我想显示所有名称,我正在考虑使用以下内容:
/users/*/name
这是正确的还是我应该使用其他方式?
编辑 1:添加子资源
从答案中建议使用字段查询参数。但是让我们假设我现在想要一些子资源的属性。例如:
/user/*/name/full
/user/*/name/short
如果我遵循字段选项,我将不得不这样做:
/user?fields=name-short
/user?fields=name-full
这不是很好,因为 name 的属性以某种方式链接到 name 类。
请考虑这个例子。试着理解这个想法;)
【问题讨论】:
标签: rest api design-patterns