用于传入整数数组的正确 REST URI 格式?



我需要根据一组送货 ID 获取购买票证报告。 例如:

  • /购买票证报告的 GET uri
  • [1,3,5,7] 的交货 ID

在 REST 实现中表示这一点的正确方法是什么? 它似乎没有完全映射到标准的 REST 请求。 您是否建议回退到查询字符串参数,例如:

GET/purchase-ticket-report?deliveryIds=1,3,5,7

^^^ 我什至不完全确定以这种格式传递 qs 参数是否有效。 另一种选择可能是通过 json 请求正文中的属性传递 int 数组。 您将如何在 REST 实现中处理此场景?

您是否

建议回退到查询字符串参数,例如:

GET /purchase-ticket-report?deliveryIds=1,3,5,7

这看起来很棒

  1. 符合RFC 3986的生产规则
  2. 使用 HTML 表单重新创建很容易
  3. 它很容易被描述为一个 URI 模板,任何具有 4 级支持的模板库都可以理解该模板。

另一种选择可能是通过 json 请求正文中的属性传递 int 数组。

这是最后的手段 - 如果列表可以包含如此多的元素,以至于您开始突破 URI 长度限制,则可能需要这样做。 但是,如果可以将 ID 保留在 URI 中,这将使缓存变得更加容易。

最新更新