From 7008b4fa335e6ff0efae81bdca7e5d37ca6ffc61 Mon Sep 17 00:00:00 2001 From: Pavel Belyaev Date: Wed, 15 Mar 2023 10:11:28 +0500 Subject: [PATCH] v0.00001 --- readme.md | 66 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 66 insertions(+) diff --git a/readme.md b/readme.md index e69de29..6e931fc 100644 --- a/readme.md +++ b/readme.md @@ -0,0 +1,66 @@ +# Обертки - хелперы +Данный набор классов поможет быстро накатать ваш код на 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 //путь до трастового хранилища + null //его тип + null //пароль + ); + +``` + +***to be continue*** \ No newline at end of file