1

想象一下,我正在构建一个产品来跟踪银行交易,我们支持GET /transactions/{id}它允许您检索特定交易。

我们还有一个显示交易列表的客户端,因此我们允许一个GET默认/transactions情况下返回您可以作为 JSON 数组访问的最后 100 个交易的客户端。我们网站的一个常见用例是获取围绕固定点的交易列表。为了支持这一点,我们有一些 GET 参数:

  • anchor:用作中心点的id
  • number_beforeanchor:返回前多少笔交易
  • number_after: 多少交易后anchor返回。

如果我们可以让客户通过某种longpolling来了解交易的最新信息,那就太好了。

我想实现一个请求,客户端可以说“这是我拥有的最后一个id,当您有一个或多个事务大于此时返回。”,并且服务器将阻塞(或者如果非阻塞调用立即返回被要求),直到它有东西要返回。

这也应该是具有不同参数集的GETto ,而不是前面提到的,还是重载 URI 那样糟糕,我应该将其设为 GET to或其他什么?/transactionslast_txn/transactions/+latest

4

1 回答 1

0

我相信没有 100% 意识形态正确的选项,而且 REST 风格没有描述这一刻,所以这取决于你。

但我建议使用/transactions不同的参数:你保持方法重载的概念对于程序员来说是很自然的。

于 2013-01-05T21:16:37.380 回答