Avatar ·

Como usar java.net.URLConnection para enviar e processar requisições HTTP

Olá a todos! Estou começando a aprender Java e me deparei com uma tarefa: preciso enviar uma requisição HTTP para um servidor e obter a resposta. Li sobre a classe URLConnection, mas não consigo entender seu uso correto. Escrevi o seguinte código para uma requisição GET: ```java import java.net.*; import java.io.*; public class HttpTest { public static void main(String[] args) throws Exception { URL url = new URL("http://example.com/api/data"); URLConnection conn = url.openConnection(); BufferedReader reader = new BufferedReader(new InputStreamReader(conn.getInputStream())); String line; while ((line = reader.readLine()) != null) { System.out.println(line); } reader.close(); } } ``` Mas o código não funciona de forma estável: às vezes lança IOException, às vezes a resposta chega incompleta. Além disso, quero aprender a enviar requisições POST com corpo JSON, mas a documentação da Oracle me assusta com sua complexidade. Por favor, me ajudem.