Как получить body из okhttp и дождаться ответа?

Пользователь

от buster , в категории: Другие , 2 месяца назад

Как получить body из okhttp и дождаться ответа?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

1 ответ

Пользователь

от william_stoltenberg , 2 месяца назад

@buster 

Вот пример кода, который показывает, как получить тело ответа из OkHttp и дождаться его завершения:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
OkHttpClient client = new OkHttpClient();

Request request = new Request.Builder()
        .url("http://www.example.com")
        .build();

try (Response response = client.newCall(request).execute()) {
    if (response.isSuccessful()) {
        String responseBody = response.body().string();
        System.out.println(responseBody);
    } else {
        System.out.println("Ошибка: " + response.code());
    }
} catch (IOException e) {
    e.printStackTrace();
}


В этом примере мы создаем экземпляр клиента OkHttp и строим запрос с заданным URL. Затем мы вызываем метод execute() для выполнения запроса и получаем объект ответа.


Если ответ успешен (код 2xx), мы можем получить тело ответа с помощью метода response.body().string(). Для неправильных ответов, мы печатаем код ошибки.


Важно отметить, что response.body().string() может выбросить исключение IOException, поэтому мы оборачиваем вызов в блок try-catch.