Создать REST API-клиент для Android с помощью Okhttp
Я планирую перепроектировать мой клиентский класс REST API. Я использую Okhttp для выполнения вызовов API, и вот как выглядит мой текущий класс клиента API.
Мой клиентский класс API:
public class NetworkUtil {
private final String API_ENDPOINT_ONE = "https://api/endpoint/1";
private final String API_ENDPOINT_TWO = "https://api/endpoint/2";
public static void getData(String url, final OkHttpListener listener){
OkHttpClient client = new OkHttpClient();
// GET request
Request request = new Request.Builder()
.url(API_ENDPOINT_ONE)
.build();
client.newCall(request).enqueue(new Callback() {
@Override
public void onFailure(Request request, IOException e) {
listener.onFailure(request, e);
}
@Override
public void onResponse(Response response) throws IOException {
listener.onResponse(response);
}
});
}
и вот мой интерфейс обратного вызова:
public interface OkHttpListener {
void onFailure(Request request, IOException e);
void onResponse(Response response) throws IOException;
}
У меня много конечных точек API. Мне нужно спроектировать этот класс таким образом, чтобы я мог отправлять JSON-запросы и получать ответ от самого Activity/Fragment.