0

假设我有一个具有帐户的应用程序,我可以将它们表示为休息资源,例如:

/accounts   //single account
/accounts/{id}    //a specific account

1)如果一个帐户有一个帐户状态,这是引用它的正确方法吗?

/accounts/{id}/status

2) 我如何表示 REST 中的搜索,比如我想搜索并以“ABC”开头的帐户?

4

2 回答 2

2

如果帐户具有帐户状态,这是引用它的正确方法吗?

也许,如果帐户状态本身就是一个成熟的数据对象。如果它是一个简单的标量值,您可以考虑使用一个参数来约束从返回的值/accounts/{id},例如GET /accounts/{id}?field=status.

我如何表示 REST 中的搜索,比如我想搜索以“ABC”开头的帐户?

使用 URL 参数:

GET /accounts/?search=ABC*
于 2013-09-12T12:36:18.937 回答
0

您在 URL 中混合了名词和动词,一般来说这不是 RESTFul 方法。在本文中,他们讨论了在您的网址中表示名词和动词的区别。搜索虽然是一种不同的野兽,并且尝试了几种不同的方式,但我更喜欢遵循将搜索设为自己的 url 的方法。这样做的一个原因是获取 GET 请求的缓存,您可以通过使 URL 以搜索为中心来实现。查询参数不会被缓存,因此这是反对将它们用作我们 GET 请求结束时的参数的另一个论点。本文更多地讨论了我喜欢使用的方法。

于 2013-09-12T12:46:13.233 回答