Я работаю над проектом, в котором я создаю класс для запуска HTTP-запросов клиента (мой класс действует как клиент). Он принимает URL-адрес и метод запроса (GET, POST, PUT и т. д.), и я хочу иметь возможность анализировать URL-адрес и открывать HttpsURLConnection или HttpURLConnection в зависимости от того, является ли он https или http (предположим, что указанные URL-адреса всегда будут правильный).
Если я сделаю следующее:
URLConnection conn = url.openConnection();
Затем это автоматически создаст URLConnection, который может принимать как http, так и https, но если я это сделаю, я не смогу найти способ установить метод запроса (GET, POST и т. д.), поскольку только классы HttpsURLConnection или HttpURLConnection имеют Метод setRequestMethod.
Если я сделаю что-то вроде следующего:
if(is_https)
HttpsURLConnection conn = (HttpsURLConnection) url.openConnection();
else
HttpURLConnection conn = (HttpURLConnection) url.openConnection();
Затем создаются соединения, но я не могу получить к ним доступ за пределами блоков if.
Возможно ли это сделать, или я должен просто отказаться и использовать классы apache httpclient?