UseMuffin/Webservice

How to get pagination data?

davidyell opened this issue · 3 comments

My api response contains a meta element with the pagination data for the response.

{
    "meta": {
        "pagination": {
            "page": 1,
            "next_page": 2,
            "previous_page": null,
            "total_results": 102,
            "total_pages": 6,
            "per_page": 20
        }
    },
    "body": {
        "results": [
            {
                "id": 530,
                "name": "Unlimited Broadband",
// etc

However when the response is parsed into a Resource this data is lost. I can't see it in Muffin\Webservice\Query which makes sense as it's not been executed yet. However when it is executed it will be converted into a Resource, so it's lost then also.

I would rather know from the preceding request if there is a next page or not rather than intentionally making a 404 request to find the last page.

Any updates on this for 2.0 release ? If no, is there a way I can send the pagination info to the output ?

$resources = $this->_transformResults($query->endpoint(), $resultArray['tickets']);

_transformResults only sending the result array itself

We have yet to sufficiently test the release candidate to get the 2.0 release out. Once that is done there are plans to implement Pagination.

I currently use a fork in which I have implemented pagination. https://github.com/davidyell/Webservice/blob/develop/src/Pagination.php

It is on the roadmap though!

We have yet to sufficiently test the release candidate to get the 2.0 release out. Once that is done there are plans to implement Pagination.

I currently use a fork in which I have implemented pagination. https://github.com/davidyell/Webservice/blob/develop/src/Pagination.php

It is on the roadmap though!

Can I know how to use this if i just copy the pagination inside current Webservice plugin ? Is't straight forward enough for me to use inside my code ?