WebApi2:路由与查询字符串

时间:2019-07-03 22:20:52

标签: c# .net rest webapi2

我的印象是REST应该使用路由,如下所示:

http://server/api/accounts/2

而不是像这样的东西:

http://server/api/accounts?id=2

我已经看到很多使用查询字符串的示例,但是我希望人们会说这是错误的。但是,事实并非如此。

对于[HTTPGET],我应该优先选择一个吗?

1 个答案:

答案 0 :(得分:1)

路径参数用于标识一个或多个特定资源。
查询参数用于对这些资源进行排序/过滤。

优良作法是将所有必需的参数设置为 path 参数,将所有可选参数设置为 query 参数。

在您的情况下,如果您的:id参数唯一地标识一个帐户,则该参数应为路径参数,即:/api/accounts/:id