首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >命名嵌套资源的REST最佳实践

命名嵌套资源的REST最佳实践
EN

Stack Overflow用户
提问于 2012-08-21 16:57:08
回答 2查看 1.1K关注 0票数 0

目前我有以下资源:

代码语言:javascript
复制
/api/user/12

返回有关使用id=12的用户的信息

代码语言:javascript
复制
/api/user/12/trips

返回用户12的行程列表及其信息

然而,我认为/trip/是一个单独的资源,所以它将继续如下所示:

代码语言:javascript
复制
/api/trip/5

返回有关使用id=5的行程的信息

这是一个很好的方法吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-08-21 17:00:19

您应该始终使用复数来命名资源:

代码语言:javascript
复制
/api/users

含义:所有用户(集合)。

代码语言:javascript
复制
/api/users/12

含义:用户12。

对于与给定资源相关的嵌套资源,您可以执行以下操作:

代码语言:javascript
复制
/api/users/12/trips

含义:user 12的所有trips

但是,您仍然可以使用以下URI来描述特定的trip

代码语言:javascript
复制
/api/trips/5

含义: trip 5。

票数 1
EN

Stack Overflow用户

发布于 2012-08-21 17:00:11

最佳实践是使用域的路径。

显示特定用户的步骤:

代码语言:javascript
复制
/api/user/{username}

要向所有用户显示以下内容:

代码语言:javascript
复制
/api/user

使用查询过滤所有用户。

代码语言:javascript
复制
/api/user?region=Italy

这里有一篇很好的文章:http://developer.immobilienscout24.de/wiki/Path_and_Query_Parameters

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12051401

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档