Python 使用分页或获取完整响应

Python 使用分页或获取完整响应,python,flask,pagination,flask-restless,Python,Flask,Pagination,Flask Restless,有时我希望从资源中获得完整的响应,有时我希望它带有分页。到目前为止,我只能使用其中一个或另一个。 但是,是否有一种方法可以根据我在GET请求中传递的参数将flask Untivent设置为同时使用这两个参数 如果要禁用特定资源的分页,请更改如下设置: manager.create_api(someresource, methods=['GET'], results_per_page=None) 但是现在分页被完全禁用了,这不是我想要的行为 如果默认启用分页,则只返回第一页。 如果我在查询字符串

有时我希望从资源中获得完整的响应,有时我希望它带有分页。到目前为止,我只能使用其中一个或另一个。 但是,是否有一种方法可以根据我在GET请求中传递的参数将flask Untivent设置为同时使用这两个参数

如果要禁用特定资源的分页,请更改如下设置:

manager.create_api(someresource, methods=['GET'], results_per_page=None)
但是现在分页被完全禁用了,这不是我想要的行为

如果默认启用分页,则只返回第一页。 如果我在查询字符串中特别传递了第1页,是否有办法告诉flask Untivent只获取第一页,如下所示:

GET http://someaddress/resource?page=1 
实际上,我能够使用循环解决问题,但我认为这不是一个好的解决方案,因为我必须使用多个请求

我请求了资源并获取了total_pages,然后对total_pages运行了一个循环,并将每个迭代作为查询字符串中的参数传递给另一个获取每个页面的新请求:

i = 1
while i <= response.total_pages:
    page_response = requests.get("http://someurl/someresource?page=" + str(i))
    ...
i=1

当i时,您可以通过禁用分页来获得所需的行为:

manager.create_api(someresource, methods=['GET'], results_per_page=0)
然后使用
results\u per\u page
参数查询API,如下所示:

GET http://someaddress/resource?results_per_page=2
results\u per\u page
参数必须是一个正整数,并且将是您的新页面大小。进一步记录了该参数


使用此配置可以直接获得完整响应,而无需分页。只需省略每页的
结果
参数:

GET http://someaddress/resource