设计REST URL

时间:2013-10-08 08:42:14

标签: rest

我有以下问题。请建议我输入。

我需要可以归类为

的交易清单

一个。待决/完成

湾对于给定的帐号

℃。对于给定的客户ID

d。对于给定的类别(类别A,类别B)等。

上述4个中的任何一个都是可选的。

我正在考虑将上述4个选项作为查询参数,并使用类似这样的网址http://localhost:8080/Transaction/?status=pending&customerid=3,4&category=catA

这是一个很好的设计吗?

[编辑] 我不知道将名词作为查询参数传递是否是好的设计。

1 个答案:

答案 0 :(得分:1)

就REST URI设计而言,您必须首先找到资源,然后找出操作以及它们如何相互链接。

此外,您应该在URI中使用名词,并尝试最小化查询参数的数量。

对于这种情况,您基本上希望根据某些条件搜索事务,如您所述。

http://localhost:8080/transaction?status=pending&customerid=3,4&category=catA

你是对的,但实现应该将查询参数的值拆分为提取值。

在一般惯例中,消费者,帐户可以被视为单独的资源。

http://localhost:8080/consumer/{consumerId}/account/{accountNumber}/transaction?status=pending