http пост с муравьем для загрузки файла - PullRequest
5 голосов
/ 31 марта 2010

Как часть моего процесса сборки Ant, я хотел бы загрузить файлы на веб-сервер через HTTP Post. Ant поставляется только с задачей HTTP Get. Однако Ant Contrib , похоже, имеет задачу HTTP Post. Проблема в том, что у него нет базовой аутентификации (как у get) или какого-либо другого способа указать загрузку файла (несмотря на то, что в документации сказано, что rawFile не является частью дистрибутива).

Мой вопрос таков: действительно ли задание Ant Contrib Post поддерживает то, что я хочу, но неочевидным способом (возможно, я должен сделать это вручную)? Или есть другой способ сделать это?

Ответы [ 7 ]

7 голосов
/ 15 марта 2011

Я создал лицензированную Apache 2.0, полнофункциональную и простую в использовании задачу Ant http. Он использует классы кода java.net. * И не имеет сторонних библиотечных зависимостей.

Он может выполнять POST / PUT с файлами или встроенными объектами и имеет гибкие параметры для установки требуемых заголовков, проверки подлинности и проверки кода состояния на случай сбоя при неожиданных результатах.

http://missinglinkcode.wordpress.com/2011/03/15/apache-ant-http-task/

6 голосов
/ 02 апреля 2010

Используйте программу curl , вызываемую через задачу ANT exec.

Прочитать примеры для curl answer

4 голосов
/ 20 марта 2011

В списке пользователей Ant объявлено о новой задаче ant http с именем «Missing Link», попробуйте http://code.google.com/p/missing-link/

0 голосов
/ 17 ноября 2010

Я сделал патч для ant-contrib, который добавляет базовую аутентификацию в пост-задачу. Надеюсь, он будет включен в багажник. А пока вы можете собрать его из исходного кода и применить патч самостоятельно:

http://sourceforge.net/tracker/?func=detail&aid=3110414&group_id=36177&atid=416922

После того, как вы установили новый ant-contrib.jar, просто добавьте атрибуты имени пользователя и пароля в задачу post, и она будет работать нормально. Загрузка файла, я не знаю ...

0 голосов
/ 15 апреля 2010

В «песочнице» для муравьев есть также AntLib здесь , который утверждает, что получает HTTP и отправляет. Однако его аутентификация также нарушена.

0 голосов
/ 14 апреля 2010

В Antelope есть задача http post, но, похоже, она не поддерживает базовую аутентификацию. : /

0 голосов
/ 13 апреля 2010

Существует множество задач для муравьев, основанных на http-клиенте из Джакарты:

http://fikin -ant-tasks.sourceforge.net /

также предоставляет задачу http post с аутентификацией.

При использовании ant с exec вы откроете новый процесс вне java vm. По возможности следует избегать внешних процессов ИМО.

P.S. : если fikin ant tasks / http пост с базовой аутентификацией не работает Я бы предпочел написать класс Java или даже свое собственное задание с помощью Джакарты. jakarta commons http client , образец для базовой аутентификации 2

так что он может работать в том же vm, что и ant, или, может быть, в разветвленном java-процессе
Вы найдете несколько примеров загрузки файлов с помощью http: jakarta commons http: google.

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