Този пакет предлага пълна библиотека 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 ());
}
Търсене по категория
- аудио софтуер
- бизнес и офис софтуер
- браузъри
- графичен дизайн софтуер
- диск и файл софтуер
- дом и семейство софтуер
- Драйвери
- игри
- инструменти за разработчици
- интернет софтуер
- комуникационен софтуер
- настолни подобрения
- образователна и научна софтуер
- производителността софтуер
- системни инструменти
- скрийнсейвъри
- софтуер за видео
- софтуер за работа в мрежа
- софтуер за сигурност
- софтуер за уеб програмиране
- цифрова снимка софтуер
Популярни софтуер
-
Java-Chess 3 Jun 15
-
Ubuntu MATE 16 Aug 18
-
Elastix 2 Oct 16
-
LaTeX::BibTeX 14 Apr 15
-
Linpus Linux Lite 17 Feb 15
-
Autodesk Homestyler 15 Apr 15
-
Apricity OS 12 Jan 17
HTTPClient
Друг софтуер на разработчика -
Коментари към HTTPClient
Търсене по категория
- аудио софтуер
- бизнес и офис софтуер
- браузъри
- графичен дизайн софтуер
- диск и файл софтуер
- дом и семейство софтуер
- Драйвери
- игри
- инструменти за разработчици
- интернет софтуер
- комуникационен софтуер
- настолни подобрения
- образователна и научна софтуер
- производителността софтуер
- системни инструменти
- скрийнсейвъри
- софтуер за видео
- софтуер за работа в мрежа
- софтуер за сигурност
- софтуер за уеб програмиране
- цифрова снимка софтуер
Популярни софтуер
-
Android-x86 22 Jun 18
-
Simple Scan 2 Dec 17
-
LXLE 22 Jun 18
-
WhatsApp for Desktop 18 Jul 15
-
Kismet 17 Feb 15
-
Lubuntu 16 Aug 18
-
Psiphon 20 Feb 15
Коментари не е намерена