【发布时间】:2012-12-21 13:18:39
【问题描述】:
我需要设计一个 RESTful 查询 API,它根据几个过滤器返回一组对象。通常的 HTTP 方法是 GET。唯一的问题是,它至少可以有十几个过滤器,如果我们将它们全部作为查询参数传递,URL 可能会变得很长(长到足以被某些防火墙阻止)。
减少参数的数量不是一种选择。
我能想到的另一种选择是在 URI 上使用 POST 方法,并将过滤器作为 POST 正文的一部分发送。这是否反对 RESTfull(发出 POST 调用以查询数据)。
谁有更好的设计建议?
【问题讨论】:
-
使用短的(1 字符等)参数名称?
-
它可能不是真正的 RESTful,但我认为在 GET 和 POST 方面你必须实用。如果你有那么多变量要发送并且你不能减少它们,我会发布它们。我不喜欢过度填充 URL,但这只是我自己。
-
谢谢。即使这个问题已经结束,这正是我需要回答的问题。我很高兴你问。
标签: rest http-parameters