休息Http动词查询数据的最佳实践

时间:2017-10-23 07:22:37

标签: rest api http

我已经读过最好的做法是在REST中使用方法作为对资源执行的操作的指示。让我说我有5个操作,我在资源和方法下使用:

Resource /customer- POST- CreateCustomer
DELETE-delete customer
PUT-update customer

现在我还有2个查询操作:findCustomerqueryCustomer。 我只能为其中一个使用GET方法。处理这种情况的最佳做法是什么,因为传递一个显式的HTTP标头或额外的查询字符串来识别一个特殊的opertaion似乎不是一个好的选择!

1 个答案:

答案 0 :(得分:0)

  

我还有2个查询操作:findCustomerqueryCustomer。我只能对其中一个使用GET方法。

GET方法适用于这两种操作,但您必须使用不同的URI。

使用以下内容检索客户集合的表示形式(您定义为查询的操作):

GET /customers

可以使用查询参数过滤集合。

并使用以下内容检索单个客户的表示(您定义为 find 的操作):

GET /customers/{id}

{id}是您客户的唯一标识符。

相关:有关每种情况下可以返回哪些状态代码的一些见解,请参阅此answer