我正在使用retrofit
从服务器获取数据。由于数据在很大的块中,因此我们使用分页来获取它。
但我不知道如何在改造中排列分页请求。
RestApi.DealersDataApi service = getDealersDataApi();
Call<Dealers> call = service.getDealersData(userRequest);
call.enqueue(new Callback<Dealers>() {
@Override
public void onResponse(retrofit2.Response<Dealers> response) {
Dealers dealers = response.body();
if(dealers!=null) {
String count = dealers.getCount();
int totalReq = getTotalPages(count);
// here totalReq is nothing but the total no.of request to fetch all dealer data
}
}
}
@Override
public void onFailure(Throwable t) {
}
});
此处计数是经销商的总记录,NO_OF_REC_PER_REQUEST为100,在一个请求中提取100条记录。
private int getTotalPages(String count){
double cnt = Double.valueOf(count);
int totalReq =(int) Math.ceil(cnt / NO_OF_REC_PER_REQUEST);
return totalReq;
}
UserRequest作为具有count和pagenumber参数作为POST的参数
serRequest userLoginRequest = new UserRequest();
userLoginRequest.setUserId("1234");
userLoginRequest.setOrganizationId("ABCD");
userLoginRequest.setCount("100"); // 100 per request
userLoginRequest.setPagenumber("0"); // start from