# Обертки - хелперы Данный набор классов поможет быстро накатать ваш код на Java, но это больше готовилось для одноразовых скриптов в домашней эксплуатации. Автор: Павел Беляев ## RestHelper Данный класс работает на основе ApacheHttpClient и позволяет прокидывать запросы с авторизацией по ключу. Поддерживается как односторонняя авторизация (только клиентский ключ), так и двусторонняя (проверяем еще и сервер через трастовые хранилища). Хранилища сертификатов поддерживаются двух типов - JKS и PKCS12. ### Пример использования RestHelper ```java import org.apache.http.HttpResponse; import org.pavlik.helpers.RestHelper; import java.util.HashMap; public class Main { public static void main(String[] args) { //инициализация экземпляра RestHelper Rest = new RestHelper( "client-keystore3.jks", //путь до клиентского хранилища "JKS", //тип клиентского хранилища "123321", //пароль к клиентскому хранилищу "2", //alias клиентского сертификата "truststore.jks", //путь до трастового хранилища "JKS", //его тип "123321" //пароль ); //адрес String queryUrl = "https://192.168.200.10/index.php?kokoko=1"; //тело запроса String queryBody = "{\"k\":\"val\"}"; //заголовки запроса HashMap queryHeaders = new HashMap<>(); queryHeaders.put("CONTENT-TYPE","text/plain2; charset=UTF-8"); //выполнение запроса и получение ответа HttpResponse resp = Rest.queryPostRaw(queryUrl,queryBody,queryHeaders); String respBody = Rest.getRespBody(resp); System.out.println(respBody); } } ``` Если нужна только односторонняя аутентифификация, то весь блок с трастовыми можно упустить ```java RestHelper Rest = new RestHelper( "client-keystore3.jks", //путь до клиентского хранилища "JKS", //тип клиентского хранилища "123321", //пароль к клиентскому хранилищу "2" //alias клиентского сертификата ); ``` > Если в качестве алиаса в клиентском сертификате передать null, > то будет выбран первый попавшийся. ***to be continue***