OCAPI ページネーション 23.1

Open Commerce API は、リソースインスタンスのコレクションにアクセスする際にページングを使用します。ページングによって API は一度にすべての完全なコレクションを返す代わりに、データをチャンクに分けて返すことができます。各チャンクはその位置に応じて前のチャンクや次のチャンクにリンクします。start および count パラメーターに値を指定して、明示的にページングを構成できます:

  • start:リソース要素のコレクション内でのチャンクの開始位置を指定します。値の範囲は 0 から 999 です。デフォルト値は 0 です。開始位置はページ番号ではなく、全コレクション内の開始要素の位置です。
  • count:各チャンクで返すリソースインスタンスの数を指定します。値の範囲は 0 から 200 です。デフォルト値は 25 です。

次の例では、商品検索によって総計 99 個のリソースインスタンス (シューズ) のコレクションが返されています。start プロパティには、リクエストされたチャンクは位置 10 で始まることが指定されており、count 要素には、チャンクに含めることができるリソースインスタンスは最大 5 個であることが指定されています。レスポンスでは、next および previous リンクが含まれています。このリンクによって、アプリケーションは、一度に 1 つのチャンクごとに全コレクション内を移動できます。

1REQUEST:
2GET /dw/shop/v23_1/product_search?q=shoes&start=10&count=5 HTTP/1.1
3Host: example.com
4Accept: application/json
5
6RESPONSE:
7HTTP/1.1 200 OK
8Content-Length: 351
9Content-Type: application/json; charset=UTF-8
10
11{
12  "_v" : "23.1",
13  "query":"shoes",
14  "total":99,
15  "start":10,
16  "count":5,
17  "next":"http://example.com/dw/shop/v23_1/product_search?q=shoes&start=15&count=5",
18  "previous":"http://example.com/dw/shop/v23_1/product_search?q=shoes&start=5&count=5",
19  "hits":[{
20    "product_id":123",
21    "link":"http://example.com/dw/shop/v23_1/product/123",
22    "name":"My Ultimate Shoe",
23    ...
24    },
25    ...
26  ]}

DID THIS ARTICLE SOLVE YOUR ISSUE?
Let us know so we can improve!