Будет ли Http-перенаправление работать без браузера?

#java #http-redirect #http-status-code-307

#java #http-перенаправление #http-status-code-307

Вопрос:

Мы все знаем, что браузер отвечает за перенаправление запроса, как только он получает код состояния ответа 3xx.

Но на этот раз я отправляю запрос из внутреннего кода приложения, используя URLConnection. Мое приложение запущено на сервере tomcat.

Теперь, что, если я получу код состояния ответа 3xx, позаботится ли сам tomcat о перенаправлении запроса или я должен обработать его в своем приложении как :

 if(urlConnection.getResponseCode() == 302)
{
   // make a new request to URL found in Location Header
}
  

Комментарии:

1. Tomcat не участвует в нисходящих вызовах больше, чем отель, в котором вы остановились, участвует, когда вы звоните кому-то на свой мобильный телефон. Ваш HTTP-клиент будет либо следовать перенаправлению, либо нет, в зависимости от его возможностей и того, как вы его настроили.

2. Спасибо @chrylis-осторожно оптимистично-

3. java.io.Http[s]URLConnection См. Методы set[Instance]FollowRedirects , но предупреждение: он не обрабатывает изменение протокола, например перенаправление http: на https:, что является обычным явлением. Для new-since-11 java.net.http.HttpClient см. .Builder.followRedirects .