Метод followRedirects
Метод followRedirects класса HttpClient.Builder
устанавливает политику обработки перенаправлений
(редиректов) для создаваемого HTTP-клиента.
В качестве параметра метод принимает значение
перечисления HttpClient.Redirect, которое
определяет, будет ли клиент автоматически
следовать за ответами сервера с кодами 3xx.
Доступны следующие значения параметра:
NEVER - никогда не следовать перенаправлениям,
ALWAYS - всегда следовать перенаправлениям,
NORMAL - следовать перенаправлениям,
кроме случаев, когда перенаправление ведет
с HTTPS на HTTP. Значением по умолчанию
является NEVER.
Синтаксис
builder.followRedirects(policy)
Пример
Давайте создадим HTTP-клиент, который никогда не следует перенаправлениям:
import java.net.http.HttpClient;
import java.net.http.HttpClient.Redirect;
public class Main
{
public static void main(String[] args)
{
HttpClient client = HttpClient.newBuilder()
.followRedirects(Redirect.NEVER)
.build();
System.out.println(client.followRedirects());
}
}
Результат выполнения кода:
NEVER
Пример
Давайте создадим HTTP-клиент, который всегда следует перенаправлениям:
import java.net.http.HttpClient;
import java.net.http.HttpClient.Redirect;
public class Main
{
public static void main(String[] args)
{
HttpClient client = HttpClient.newBuilder()
.followRedirects(Redirect.ALWAYS)
.build();
System.out.println(client.followRedirects());
}
}
Результат выполнения кода:
ALWAYS
Пример
Давайте создадим HTTP-клиент с нормальной политикой перенаправления, которая не разрешает переход с HTTPS на HTTP:
import java.net.http.HttpClient;
import java.net.http.HttpClient.Redirect;
public class Main
{
public static void main(String[] args)
{
HttpClient client = HttpClient.newBuilder()
.followRedirects(Redirect.NORMAL)
.build();
System.out.println(client.followRedirects());
}
}
Результат выполнения кода:
NORMAL
Смотрите также
-
класс
HttpClient.Builder,
который создает HTTP-клиент -
метод
build,
который создает экземпляр клиента -
метод
connectTimeout,
который задает таймаут подключения -
метод
send,
который отправляет HTTP-запрос