根据REST框架,我们可以使用GET方法访问资源,如果我知道关键资源,这很好。例如,为了获得事务,如果我通过transaction_id,那么我可以获得该事务的资源。但是当我想访问两个日期之间的所有事务时,我应该如何使用GET编写我的REST方法。
获取transaction_id的交易:GET / transaction / id 为了获得两个日期之间的交易???
此外,如果还有其他条件,我需要像最新的10笔交易,最旧的10笔交易那样,那么我应该如何编写我的网址,这是REST中的主要关键。
我试图查看谷歌,但无法找到完全RESTful的方式并解决我的疑问,所以在这里发布我的问题。我对POST和DELETE有清楚的了解,但是如果我想根据条件使用PUT对某些资源进行相同的更新,那么该怎么做呢?
答案 0 :(得分:0)
REST中有集合和项目资源。
如果您想获得项目的表示,通常使用唯一标识符:
/books/123
/books/isbn:32t4gf3e45e67
(不是有效的isbn)/books/isbn:{isbn}
如果您希望获得集合或简化集合的表示,请使用集合的唯一标识符并向其添加一些过滤器:
/books/since:{fromDate}/to:{toDate}/
/books/?since="{fromDate}"&to="{toDate}"
过滤器可以进入路径或url的queryString部分。
在响应中,您应该添加与这些URL(也称为HATEOAS)的链接,REST客户端可以遵循这些链接。您应该使用链接关系(例如IANA link relations)来描述这些链接和链接数据,例如schema.org或描述表示中的数据。还有其他词汇,例如GoodRelations和ofc。你也可以为自己的应用编写自己的词汇。