Jak používat Java HttpURLConnection pro HTTP GET a POST požadavky

Jak používat Java HttpURLConnection pro HTTP GET a POST požadavky

Úvod

HttpURLConnection je třída Java, která nám umožňuje odesílat a přijímat data prostřednictvím protokolů HTTP, jako je HTTP GET a POST. Je součástí standardní knihovny Java a je snadno použitelná pro vytváření HTTP klientů.

Tato třída poskytuje nízkoúrovňové rozhraní pro odesílání a přijímání HTTP požadavků, což nám dává flexibilitu při přizpůsobování našich HTTP interakcí podle našich konkrétních potřeb.

V tomto článku prozkoumáme, jak používat HttpURLConnection pro odesílání HTTP GET a POST požadavků v aplikacích Java.

HTTP GET Požadavky

Odesílání HTTP GET požadavku

Odeslání HTTP GET požadavku pomocí HttpURLConnection zahrnuje následující kroky:

1. Vytvořte URL objekt: Vytvořte objekt URL, který představuje cílovou adresu URL, na kterou chcete odeslat požadavek GET.
2. Otevřete spojení: Použijte metodu openConnection() objektu URL k otevření spojení HttpURLConnection.
3. Nastavte metodu HTTP: Pomocí metody setRequestMethod() nastavte metodu HTTP na "GET".
4. Odešlete požadavek: Zavolejte metodu connect() na objektu HttpURLConnection, abyste odeslali požadavek.

  Jak změnit účet Bethesda ve Fallout 4

Příjem odpovědi HTTP GET

Po odeslání požadavku GET můžete přijmout odpověď serveru pomocí následujících kroků:

1. Získejte kód odpovědi: Použijte metodu getResponseCode() objektu HttpURLConnection k získání kódu odpovědi HTTP, který indikuje úspěch nebo selhání požadavku.
2. Získejte vstupní proud: Pomocí metody getInputStream() objektu HttpURLConnection získejte vstupní proud, který obsahuje odpověď serveru.
3. Přečtěte odpověď: Pomocí datového proudu nebo nástroje pro analýzu XML přečtěte odpověď serveru a zpracujte data podle potřeby.

HTTP POST Požadavky

Odesílání HTTP POST požadavku

Odeslání HTTP POST požadavku pomocí HttpURLConnection zahrnuje následující kroky:

1. Vytvořte URL objekt: Vytvořte objekt URL, který představuje cílovou adresu URL, na kterou chcete odeslat požadavek POST.
2. Otevřete spojení: Použijte metodu openConnection() objektu URL k otevření spojení HttpURLConnection.
3. Nastavte metodu HTTP: Pomocí metody setRequestMethod() nastavte metodu HTTP na "POST".
4. Nastavte parametry požadavku: Pomocí metody setRequestProperty() objektu HttpURLConnection nastavte hlavičky požadavku, jako je „Content-Type“ a „Content-Length“.
5. Odešlete požadavek: Zavolejte metodu setDoOutput(true) na objektu HttpURLConnection, abyste povolili výstupní datový proud. Napište data požadavku do výstupního datového proudu pomocí datového proudu nebo nástroje pro analýzu XML.
6. Zavřete výstupní datový proud: Po odeslání dat požadavku zavřete výstupní datový proud.

  Jak přidat e-mailový podpis do Gmailu

Příjem odpovědi HTTP POST

Po odeslání požadavku POST můžete přijmout odpověď serveru pomocí následujících kroků:

1. Získejte kód odpovědi: Použijte metodu getResponseCode() objektu HttpURLConnection k získání kódu odpovědi HTTP, který indikuje úspěch nebo selhání požadavku.
2. Získejte vstupní proud: Pomocí metody getInputStream() objektu HttpURLConnection získejte vstupní proud, který obsahuje odpověď serveru.
3. Přečtěte odpověď: Pomocí datového proudu nebo nástroje pro analýzu XML přečtěte odpověď serveru a zpracujte data podle potřeby.

Závěr

Třída HttpURLConnection poskytuje výkonné rozhraní pro odesílání a přijímání HTTP požadavků v aplikacích Java. Umožňuje nám odesílat požadavky HTTP GET a POST a přijímat odpovědi serveru, což nám dává flexibilitu při přizpůsobování našich HTTP interakcí.

Pochopení toho, jak používat třídu HttpURLConnection, je nezbytné pro vývojáře, kteří chtějí vytvářet HTTP klienty v aplikacích Java. Pomocí přístupu k nízkým úrovním této třídy můžeme vytvářet robustní a efektivní HTTP interakce, abychom splnili naše potřeby.

  Jak používat noční vidění bezpečnostní kamery přes okno

Často kladené otázky

1. Jaký je rozdíl mezi HTTP GET a POST?
HTTP GET se používá k získání dat z serveru, zatímco HTTP POST se používá k odeslání dat na server.

2. Kdy bych měl použít HTTP GET a kdy HTTP POST?
HTTP GET by měl být použit, když získáváte data z serveru, která nemají žádné vedlejší účinky. HTTP POST by měl být použit, když odesíláte data na server, která mohou vést k vedlejším účinkům, jako je vytvoření nebo aktualizace záznamu v databázi.

3. Jak mohu nastavit hlavičky požadavku pro HTTP GET a POST?
Hlavičky požadavku lze nastavit pomocí metody setRequestProperty() objektu HttpURLConnection.

4. Jak mohu získat tělo odpovědi HTTP?
Tělo odpovědi lze získat pomocí datového proudu nebo nástroje pro analýzu XML.

5. Jak mohu zpracovat chyby HTTP?
Chyby HTTP lze zpracovat pomocí kódu odpovědi HTTP, který je dostupný metodou getResponseCode() objektu HttpURLConnection.

6. Jak mohu konfigurovat nastavení připojení, jako je časový limit?
Nastavení připojení lze konfigurovat pomocí metod, jako je setConnectTimeout() a setReadTimeout(), v objektu HttpURLConnection.

7. Jak mohu přidat parametry dotazu k požadavku HTTP GET?
Parametry dotazu lze přidat k objektu URL před vytvořením objektu HttpURLConnection.

8. Jak mohu připojovat soubory k požadavku HTTP POST?
Soubory lze připojovat k požadavku HTTP POST pomocí rozhraní URLConnection objektu HttpURLConnection.