如何使用SquareConnect V1 java SDK分页付款清单?

时间:2017-06-15 17:44:05

标签: pagination square-connect

SquareConnect V1文档指出使用Link支持分页,如下所示,在响应标头中。

Link:<https://connect.squareup.com/v1/LOCATION_ID/payments?batch_token=BATCH_TOKEN>;rel='next'

如何使用JavaSDK在给定的日期范围内(例如6个月)列出某个地点的所有付款? listPayments方法不提供可访问分页的返回值。

List<V1Payment> result = apiInstance.listPayments(locationId, order, beginTime, endTime, limit);

分页的唯一方法是切片日期范围吗?如果是这样,取决于切片大小,

  • 如果时间片太大,可能会错过交易,因为limit是200
    • 如果时间片太小,则OR达到请求率阈值。

感谢任何帮助。

1 个答案:

答案 0 :(得分:0)

如果您有基于时间的细分(例如过去六个月的所有交易),您应该使用请求中的时间段,然后对所有回复进行分页。

您遇到的问题是,基于标头的分页标记不会在v1端点的SDK中公开,(您也无法轻松覆盖其结果的网址)。你可以:

  • 使用不使用基于标题/链接的分页的v2事务端点
  • 切割日期范围并迭代,就像您提到的(及其相关的挑战)
  • 不使用SDK,只需直接用java代码调用v1端点
  • 使用SDK的一些基础方法(如InvokeAPI,这将是使用SDK和直接调用端点之间的混合。