0

我有一个资源“用户”。您可以通过以下方式请求有关特定用户的信息:

users/:id

其中“id”是一个数字。我还希望能够通过用户名查询用户。我想知道启用此功能的路线应该是什么?

我正在考虑将用户名和 id 都设为 id,但存在歧义,因为如果用户的用户名包含所有数字并且该数字与另一个用户的 id 匹配,该怎么办。

所以我要问的是,处理这个问题的惯例是什么?应该是:

usernames/:username

或者users/:username/username

还是完全不同的东西?

谢谢

4

2 回答 2

3

就我个人而言,我会通过 url 路由方法通过 id 获取用户:

/users/:id

并使用查询字符串通过用户名获取用户:

/users?username=johndoe
于 2013-07-17T07:36:44.710 回答
0

只是一个想法:“用户”空间可以划分为两个子空间:“用户名”和“ID”。

然后,可以分别访问它们:

/users/usernames/:username
/users/ids/:id 

“ids”空间的简写可能只是“/users/”,它的访问方式如下:

/users/:id
于 2013-07-16T21:56:41.750 回答