#HttpFacade
Легковесный HTTP-клиентский инструмент. Большая часть кода скопирована с jsoup, но удалена часть, связанная с парсингом HTML.
Осуществление HTTP-запросов с помощью простого API
String body = HttpFacade.connect("http://.....")
.data("arg1", "параметр")
.data("arg2", "ещё один параметр")
.get(); //или post()
Метод .data()
добавляет параметры, которые по умолчанию будут закодированы методом URLEncode
, используя кодировку UTF-8
.
body
— это возвращаемая строка.
HttpFacade.connect("http://.....")
.post("<xml><message>Я сообщение, отправленное на сервер.</message></xml>");
Важно отметить, что параметры, добавляемые с помощью метода .data()
, будут добавлены к URL после знака вопроса (?
) и не будут влиять на передаваемое тело запроса. Непосредственно передаваемое тело POST-запроса не будет закодировано методом URLEncode. В случае необходимости вы можете самостоятельно выполнить кодирование:
String xml = URLEncoder.encode("<xml>...</xml>", "UTF-8");
HttpFacade.connect("http://.....")
.post(xml);
```3. Другие пользовательские опции
String body = HttpFacade.connect("http://....../")
.ignoreBlankParameters(false) //пустые строки (включая null) не будут игнорироваться
.ignoreHttpErrors(true) //исключение не будет выброшено, даже если HttpStatus находится вне диапазона от 200 до 400
.charset("GBK") //используется кодировка GBK
.contentType("application/x-www-form-urlencoded")
.accept("application/json")
.userAgent("Mozilla/5.0 (Windows NT 5.1; rv:5.0) Gecko/20100101 Firefox/5.0")
.data("ID", null) //так как были установлены неигнорировать пустые параметры, то будет добавлен "&ID=" к URL (GET) или в теле запроса (POST)
.data("LOGIN_NO", loginNo)
.signer(signer) //добавление подписи, signer должен реализовать интерфейс org.terramagnet.http.signature.Signer
.post();
Дополнительные конфигурационные параметры см. в [JavaDoc].4. Загрузка файла
InputStream is = null; try { is = new FileInputStream("C:\Users\Administrator\Pictures\psb.png"); HttpFacade.connect("http://....../") .data("file", "моё изображение1.png", is) .post(); } finally { if(is != null){ is.close(); } }
## Почему выбрать HttpFacade?
Кроме зависимости от библиотеки логгирования `org.slf4j.slf4j-api`, нет других сторонних зависимостей.
Это ещё более легковесный HttpClient, чем [OkHttp](http://square.github.io/okhttp/).
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Опубликовать ( 0 )