Дополнительно
Как отправить HTTP-запрос в java?
Как на Java составить сообщение HTTP-запроса и отправить его HTTP WebServer?
391
9
Как на Java составить сообщение HTTP-запроса и отправить его HTTP WebServer?
Вы можете использовать java.net.HttpUrlConnection.
Пример (отсюда), с улучшениями. Включено на случай гниения ссылки:
Из Oracle's java tutorial
Я знаю, что другие рекомендуют http-клиент Apache, но он добавляет сложности (т.е. больше вещей, которые могут пойти не так), что редко оправдано. Для простых задач подойдет
java.net.URL
.В Apache HttpComponents. Примеры для двух модулей - HttpCore и с помощью HttpClient поможет вам начать прямо сейчас.
Не то, что HttpUrlConnection-это плохой выбор, HttpComponents будет абстрактным много нудного кодирования от. Я рекомендую это, если вы действительно хотите поддержать большое HTTP-серверов/клиентов с минимальным кодом. Кстати, HttpCore может быть использован для приложений (клиента или сервера) с минимальной функциональностью, в то время как с помощью HttpClient используется для клиентов, которым требуется поддержка различных схем аутентификации, поддержка куки и т. д.
Здесь'с полной программе Java 7:
Новые попытки с ресурсами будет автоматическ-закройте сканер, который будет автоматически закрыть InputStream.
Это поможет вам. Дон'т забудьте добавить httpclient.jar банки `` в classpath.
Компания Google Java клиента по HTTP имеет хороший API для HTTP-запросов. Вы можете легко добавить поддержку JSON и т. д. Хотя для простых запросов это может быть перебор.
Вы можете использовать гнездо для этого, как
Там'ы большие связи об отправке пост запроса здесь на примере депо::
Если вы хотите, чтобы отправить вам запрос вы можете слегка изменить код, чтобы удовлетворить ваши потребности. В частности, вы должны добавить параметры в конструкторе URL-адреса. Затем, также закомментировать эту
водонепроницаемые.записи(данные);
Единственное, что's не написано, и вы должны остерегаться, - это время ожидания. Особенно если вы хотите использовать его в веб-сервисов, вы должны установить тайм-ауты, в противном случае приведенный выше код будет ждать неопределенное время или на очень долгое время, по крайней мере, и это's что-то, вероятно, вы не'т хотите.
Таймауты устанавливаются как этот
соед.setReadTimeout(2000);
входной параметр в миллисекундах