эквивалент CURL в JAVA - PullRequest
       43

эквивалент CURL в JAVA

43 голосов
/ 22 сентября 2008

Мне поручено написать компонент аутентификации для JAVA приложения с открытым исходным кодом. У нас есть собственный виджет аутентификации, который использует https. У меня есть пример кода php, который обращается к widget, который использует cURL для обработки передачи.

У меня вопрос: есть ли порт от cURL до JAVA, или, что еще лучше, какой базовый пакет подберет меня достаточно близко, чтобы справиться с задачей?

Обновление

Вкратце, код, который я хотел бы воспроизвести в JAVA:

$cp = curl_init();
$my_url = "https://" . AUTH_SERVER . "/auth/authenticate.asp?pt1=$uname&pt2=$pass&pt4=full";
curl_setopt($cp, CURLOPT_URL, $my_url);
curl_setopt($cp, CURLOPT_RETURNTRANSFER, 1);
$result = curl_exec($cp);
curl_close($cp);

Хит , я думаю, что вы на правильном пути, я думаю, что в конечном итоге я буду использовать HttpsURLConnection, а затем выберу что мне нужно из ответа.

Ответы [ 5 ]

62 голосов
/ 22 сентября 2008

Обработка исключений опущена:

HttpURLConnection con = (HttpURLConnection) new URL("https://www.example.com").openConnection();
con.setRequestMethod("POST");
con.getOutputStream().write("LOGIN".getBytes("UTF-8"));
con.getInputStream();
23 голосов
/ 22 сентября 2008

Я бы использовал Commons Http Client . В проекте есть класс contrib, который позволяет использовать ssl.

Мы используем его, и он работает хорошо.

Редактировать: вот SSL Guide

4 голосов
/ 17 марта 2014

jsoup

Библиотека jsoup извлекает URL-адрес в качестве первого шага в своих обязанностях анализа и анализа HTML.

Document doc = Jsoup.connect("http://en.wikipedia.org/").get();
1 голос
/ 22 сентября 2008

Вы также можете попробовать [http://hc.apache.org/](HTTP Компоненты) из проекта Apache, если вам нужно больше возможностей, чем предусмотрено через Commons Net.

1 голос
/ 22 сентября 2008

Попробуйте Apache Commons Net для сетевых протоколов. Бесплатно! * * 1003

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...