Този пакет предлага пълна библиотека HTTP клиент. В момента тя изпълнява повечето от съответните части на HTTP / 1.0 и HTTP / 1.1 протоколи, включително главата на искането методи, може да получи, POST и пуснати, и автоматичното управление на разрешителното, исканията за пренасочване и бисквитки.
Освен това са включени Codecs клас съдържа кодери и декодери за Base64, цитиран-лицевата, URL-кодиране, chunked и кодиране на съставното / Форма-данни. Цялото това нещо е безплатно, и разпространява под GNU Lesser General Public License (LGPL) (имайте предвид, че това не е същото като на GPL).
След са комплектите и документацията на HTTPClient версия 0.3-3. Ако имате някакви проблеми, бъгове, предложения, коментари и т.н. видите информация за отстраняване на грешки и проблеми за докладване. Стара версия на тези страници също са на разположение на японски, благодарение на любезните усилията на Юджи Kumasaka.
Използвайки HTTPClient трябва да бъде съвсем проста. Първо добави вноса на декларация за внос HTTPClient. *; към вашия файл (а). След това ще създаде екземпляр на HTTPConnection (ще ви трябва един за всеки сървър, който искате да говорите с). Исканията след това могат да бъдат изпратени чрез един от ръководителя методи (), Get (), Post (), и т.н. в HTTPConnection.
Тези методи всички се връщат инстанция на HTTPResponse която има методи за достъп до заглавията на отговор (getHeader (), getHeaderAsInt (), и т.н.), различни информационни отговор (getStatusCode (), getReasonLine () и т.н.), данните за отговор (getData () , getText () и getInputStream ()) и всякакви средства, които може да са били изпратени (getTrailer (), getTrailerAsInt () и т.н.). Следват някои примери, за да започнете.
За да изтеглите файлове от URL "http://www.myaddr.net/my/file" можете да използвате нещо като следното:
опитвам
{
HTTPConnection CON = нова HTTPConnection ("www.myaddr.net");
HTTPResponse RSP = con.Get ("/ моя / файл");
ако (rsp.getStatusCode ()> = 300)
{
System.err.println ("получи Грешка:" + rsp.getReasonLine ());
System.err.println (rsp.getText ());
}
още
данни = rsp.getData ();
RSP = con.Get ("/ another_file");
ако (rsp.getStatusCode ()> = 300)
{
System.err.println ("получи Грешка:" + rsp.getReasonLine ());
System.err.println (rsp.getText ());
}
още
other_data = rsp.getData ();
}
улова (IOException МОР)
{
System.err.println (ioe.toString ());
}
улова (ParseException ЕЖ)
{
System.err.println ("Грешка при анализ Content-Type:" + pe.toString ());
}
улова (ModuleException мен)
{
System.err.println ("искане работа Грешка:" + me.getMessage ());
}
Това ще получите файловете "/ моя / файл" и "/ another_file" и постави съдържанието им в байт [] е достъпна чрез getData (). Имайте предвид, че трябва да се създаде само една нова HTTPConnection при изпращане на искане за нов сървър (друг протокол, приемаща или пристанище); въпреки че може да се създаде нов HTTPConnection за всяко искане на същия сървър това не се препоръчва, тъй като разнообразна информация за сървъра се кешира след първото искане (за оптимизиране на последващо искане) и постоянни връзки се използват, когато е възможно (виж също Advanced Info).
За да публикувате данни за формуляри от аплет към вашия сървър можете да използвате нещо като това (ако приемем, че имате две полета, наречени име и електронна поща, чието съдържание се съхраняват в името на променливи и електронна поща):
опитвам
{
NVPair form_data [] = нова NVPair [2];
form_data [0] = нови NVPair ("име", име);
form_data [1] = нови NVPair ("електронна поща", електронна поща);
// Обърнете внимание на удобството конструктора на аплети
HTTPConnection CON = нова HTTPConnection (това);
HTTPResponse RSP = con.Post ("/ CGI-хамбар / my_script", form_data);
ако (rsp.getStatusCode ()> = 300)
{
System.err.println ("получи Грешка:" + rsp.getReasonLine ());
System.err.println (rsp.getText ());
}
още
поток = rsp.getInputStream ();
}
улова (IOException МОР)
{
System.err.println (ioe.toString ());
}
улова (ModuleException мен)
{
System.err.println ("искане работа Грешка:" + me.getMessage ());
}
Ето данните на отговор се четат в свободното време чрез InputStream вместо всички наведнъж в един байт [].
Като друг пример, ако искате да качите документ в URL (и сървърът поддържа HTTP PUT) бихте могли да направите нещо подобно на следното:
опитвам
{
URL URL = нов URL ("http://www.mydomain.us/test/my_file");
HTTPConnection CON = нова HTTPConnection (URL);
HTTPResponse RSP = con.Put (url.getFile (), "Hello World");
ако (rsp.getStatusCode ()> = 300)
{
System.err.println ("получи Грешка:" + rsp.getReasonLine ());
System.err.println (rsp.getText ());
}
още
текст = rsp.getText ();
}
улова (IOException МОР)
{
System.err.println (ioe.toString ());
}
улова (ModuleException мен)
{
System.err.println ("искане работа Грешка:" + me.getMessage ());
}
Търсене по категория
- аудио софтуер
- бизнес и офис софтуер
- браузъри
- графичен дизайн софтуер
- диск и файл софтуер
- дом и семейство софтуер
- Драйвери
- игри
- инструменти за разработчици
- интернет софтуер
- комуникационен софтуер
- настолни подобрения
- образователна и научна софтуер
- производителността софтуер
- системни инструменти
- скрийнсейвъри
- софтуер за видео
- софтуер за работа в мрежа
- софтуер за сигурност
- софтуер за уеб програмиране
- цифрова снимка софтуер
Популярни софтуер
-
Q4OS 2 Oct 17
-
Linux Secure Remix 17 Feb 15
-
Zorin OS Lite 16 Aug 18
-
Cactus McCoy 2 20 Feb 15
-
Cub Linux 11 Apr 16
-
Kodi 16 Aug 18
-
PSPP 3 Jun 15
HTTPClient
Друг софтуер на разработчика -
Коментари към HTTPClient
Търсене по категория
- аудио софтуер
- бизнес и офис софтуер
- браузъри
- графичен дизайн софтуер
- диск и файл софтуер
- дом и семейство софтуер
- Драйвери
- игри
- инструменти за разработчици
- интернет софтуер
- комуникационен софтуер
- настолни подобрения
- образователна и научна софтуер
- производителността софтуер
- системни инструменти
- скрийнсейвъри
- софтуер за видео
- софтуер за работа в мрежа
- софтуер за сигурност
- софтуер за уеб програмиране
- цифрова снимка софтуер
Популярни софтуер
-
Puppy Linux 19 Feb 15
-
Plants vs. Zombies 12 May 15
-
HardInfo 3 Jun 15
-
Super Grub2 Disk 20 Jan 18
-
MultiSystem 17 Feb 15
-
LXLE 22 Jun 18
-
Xandros Desktop OS 3 Jun 15
Коментари не е намерена