RESTful API ページネーションの例
組織によっては、数千台のAPのインベントリを抱えているところもあります。API GETリクエストですべてを表示する場合は、デフォルトでレスポンスが1つのページにページネーションなしで返されるため、これは難しい場合があります。 X-Page-Limit
、 X-Page-Page
、および X-Page-Total
のHTTPヘッダーパラメーターをAPI GETリクエストに追加することで、返されたデータへのページネーションを有効にすることができます。これらは、使用可能なすべてのエントリを取得しているかどうか、または次のページをクエリする必要があるかどうかを知るのに役立ちます。
X-Page-Limit
は、ページあたりの結果の最大数を定義します。制限はデフォルトで 100 で、最大値は 1000 です。ただし、これにはいくつかの例外があります。
X-Page-Page
は、ページ結果の最大数を定義します。
X-Page-Total
は、リスト内のエントリの合計数を定義します。合計は、見ている内容とリスト内のエントリの数によって異なります。
この情報を調整するには、使用している API インターフェースのウェブ URL の末尾にクエリ パラメーターを追加します。API 呼び出しによっては、代わりに、応答本文で生成および送信される "next" URL の末尾にパラメーターを追加する必要がある場合があります ("next" が存在する場合)。
コードブロックを再利用する場合は、プレースホルダー値を実際の値(APIトークン、組織ID、サイトID、AP名など)に置き換えます。
次の例では、 limit=2&page=47 を追加すると、X-Page-Limit パラメーターと X-Page-Page パラメーターが調整されます。
https://api.mist.com/api/v1/orgs/:org_id/inventory?limit=2&page=47
次の例は、ページネーションを含む GET 要求の形式を示しています。
Request URL: https://api.mist.com/api/v1/orgs/:org_id/inventory Request Method: GET Status Code: 200 OK Date: Thu, 16 May 2019 04:22:05 GMT Request Headers: X-Page-Limit: 100 X-Page-Page: 1 X-Page-Total: 193
Django Web インターフェイスで要求を行うときに Mist から受け取る応答は、次のようになります。

使用方法の詳細については、Mist API リファレンスを参照してください。 ページ ネーション