7. 分页
API 中集合的响应是分页的。这意味着,虽然一个集合可能包含成千上万个对象,但出于 API 性能方面的考虑,每次 Web 请求只返回有限数量的结果。
当您获得集合的结果时,您将看到类似如下内容:
{'count': 25, 'next': 'http://testserver/api/v2/some_resource?page=2', 'previous': None, 'results': [ ... ] }
要获取下一页,只需请求“next”顺序 URL 中给出的页面。
使用 page_size=XX
查询字符串参数来更改每次请求返回的结果数量。
page_size
默认最大限制配置为 200,当用户尝试超过此限制的值(例如 ?page_size=1000
)时,系统会强制执行此限制。但是,您可以通过在 /etc/awx/conf.d/<some file>.py
中设置值来更改此限制,例如 MAX_PAGE_SIZE=1000
。
使用 page
查询字符串参数来检索特定页面的结果。
http://<server name>/api/v2/model_verbose_name?page_size=100&page=2
结果返回的上一页和下一页链接将自动设置这些查询字符串参数。
序列化器非常高效,但是您可能不应该请求超过几百的页面大小。
用户界面使用较小的值,以避免用户不得不进行大量滚动。