rec*_*gle 5 rest api-design restful-url restful-architecture
我有一个RESTful API,我正在设计它使用数字主键的所有资源.然而,一种类型的资源具有方便的自然键,我希望能够将其用作指定单个资源的可选方式.为了保持一致性,可以通过主键访问所有资源.
就目前而言,我可以这样做(假设23是主键):
mysite.com/api/v0/sites/23/
Run Code Online (Sandbox Code Playgroud)
但是,我想知道是否有一种惯用的方法来为资源指定备用自然键.
到目前为止,我一直想做这样的事情:
mysite.com/api/v0/sites/?domain-name=someothersite.com/
Run Code Online (Sandbox Code Playgroud)
因此,单个站点资源可以通过其主键和自然键(其域名)访问.我主要关心的是以惯用的方式进行此操作,因为我希望尽可能简单地使用API.
在您的特定情况下,主键(整数)始终可以轻松地区分域名(包括句点的字符串)。允许两者位于 URL 的同一位置似乎完全有效(且直观):
mysite.com/api/v0/sites/23
mysite.com/api/v0/sites/someothersite.com
Run Code Online (Sandbox Code Playgroud)
记录它也很简单,因为每个都是站点的唯一标识符:
mysite.com/api/v0/sites/{id}
id: primary key or fully-qualified domain name
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1380 次 |
| 最近记录: |