DEV Community

Bruno Barros
Bruno Barros

Posted on

1

Chamadas HTTP com Java

Para fazer uma requisição HTTP em Java, você pode usar a classe HttpURLConnection do pacote java.net. Aqui está um exemplo de como enviar uma requisição GET simples e ler a resposta:

import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.URL;

public class Main {
  public static void main(String[] args) throws Exception {
    // Cria a URL da requisição
    URL url = new URL("http://www.example.com");

    // Cria a conexão HTTP
    HttpURLConnection connection = (HttpURLConnection) url.openConnection();

    // Define o método da requisição como GET
    connection.setRequestMethod("GET");

    // Envia a requisição e armazena a resposta
    BufferedReader in = new BufferedReader(new InputStreamReader(connection.getInputStream()));
    String inputLine;
    StringBuilder response = new StringBuilder();
    while ((inputLine = in.readLine()) != null) {
      response.append(inputLine);
    }
    in.close();

    // Exibe a resposta
    System.out.println(response.toString());
  }
}
Enter fullscreen mode Exit fullscreen mode

Você também pode adicionar cabeçalhos à sua requisição usando o método setRequestProperty. Por exemplo, para adicionar um cabeçalho "User-Agent" à sua requisição, você pode fazer o seguinte:

connection.setRequestProperty("User-Agent", "My Java App");

Para enviar dados com a sua requisição, como um corpo de solicitação em uma requisição POST, você pode usar os métodos setDoOutput e getOutputStream. Aqui está um exemplo de como enviar um corpo de solicitação em uma requisição POST:

import java.io.BufferedReader;
import java.io.DataOutputStream;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.URL;

public class Main {
  public static void main(String[] args) throws Exception {
    // Cria a URL da requisição
    URL url = new URL("http://www.example.com");

    // Cria a conexão HTTP
    HttpURLConnection connection = (HttpURLConnection) url.openConnection();

    // Define o método da requisição como POST
    connection.setRequestMethod("POST");

    // Adiciona o cabeçalho "Content-Type" com o tipo de conteúdo do corpo de solicitação
    connection.setRequestProperty("Content-Type", "application/x-www-form-urlencoded");

    // Ativa a opção de envio de dados com a requisição
    connection.setDoOutput(true);
Enter fullscreen mode Exit fullscreen mode

_ Este post foi gerado pelo chatgpd e revisado por mim._

Qodo Takeover

Introducing Qodo Gen 1.0: Transform Your Workflow with Agentic AI

While many AI coding tools operate as simple command-response systems, Qodo Gen 1.0 represents the next generation: autonomous, multi-step problem-solving agents that work alongside you.

Read full post

Top comments (0)

AWS Security LIVE!

Join us for AWS Security LIVE!

Discover the future of cloud security. Tune in live for trends, tips, and solutions from AWS and AWS Partners.

Learn More

Instrument, monitor, fix: a hands-on debugging session

Join Lazar for a hands-on session where you’ll build it, break it, debug it, and fix it. You’ll set up Sentry, track errors, use Session Replay and Tracing, and leverage some good ol’ AI to find and fix issues fast.

Tune in to the full event

DEV is partnering to bring live events to the community. Join us or dismiss this billboard if you're not interested. ❤️