Paginação em Requisições

  1. Os aplicativos fazem a paginação de forma simples, utilizando os elementos “totalPages” e “currentPage” para identificar se existem mais páginas a buscar.

  2. Ao chamar a requisição, o mobile sempre concatena na querystring o parâmetro fixo “pageNumber”, o qual informa a página que ele está buscando no momento. Ele sempre inicia em 1. Desta forma, se o serviço de integração tiver paginação, ele deverá esperar este parâmetro em sua chamada e internamente resolver sozinho quais registros retornar para a página solicitada.

  3. Se o serviço de integração não souber o número total de páginas, basta informar “totalPages = 0” e o app irá sempre pedir a próxima página até que o serviço retorne o statuscode “404”.

StatusCode da requisição = 200,  
Corpo da Requisição:
        {    ...,
        "pageContent": {
        "totalPages": 0,
        "currentPage": pagina-atual,
        ...
        }
}
  1. Se o serviço de integração souber o número total de páginas, basta informar no json de retorno o elemento “totalPages = número de paginas” e o app irá pedir a próxima página até que “currentPage” seja igual a “totalPage”.

StatusCode da requisição = 200,  
Body Retorno:
        {         ...,
                "pageContent": {
                "totalPages": numero-total-de-paginas ou 0,
                "currentPage": pagina-atual,
                ...
                }
        }
  1. Se o resultado possuir uma única página, retorne SEMPRE:

StatusCode da requisição = 200,  
Body Retorno:
        {         …,
                "pageContent": {
                        "totalPages": 1,
                        "currentPage": 1,
                        ...
                }
        }
  1. Quando o app chamar a requisição de integração e não houver dados, retorne:

StatusCode da requisição = 404,  
Body Retorno:
        {         "message": “Mensagem a ser exibida” 
        }

Se pageNumber for igual a 1 (primeira página), o app exibe a mensagem retornada no centro da tela.

Last updated