Converter curl para Java

Converta comandos curl para código Java usando a API moderna HttpClient. O curl2code é executado inteiramente no seu navegador via WebAssembly — nenhum dado sai do seu dispositivo. Para desenvolvimento Kotlin, tente nosso conversor de curl para Kotlin. Para C# (.NET), veja curl para C#. Abaixo estão exemplos de Java prontos para usar.

Como copiar o curl do seu navegador

  1. 1

    Abra o DevTools

    Pressione F12 ou Ctrl+Shift+I para abrir as ferramentas de desenvolvedor do seu navegador.

  2. 2

    Vá para a aba Network

    Clique na aba Network e realize a ação que dispara a requisição HTTP.

  3. 3

    Copiar como cURL

    Clique com o botão direito na requisição → CopyCopy as cURL. Depois cole acima.

Perguntas Frequentes

O que é o Java HttpClient?

O HttpClient do Java (introduzido no Java 11) é um cliente HTTP moderno e nativo que substitui o legado HttpURLConnection. Ele suporta HTTP/2, requisições assíncronas, WebSocket e uma API fluida de builder. Nenhuma dependência externa é necessária. O curl2code também suporta OkHttp, Jsoup e HttpURLConnection como alternativas.

HttpClient vs OkHttp vs HttpURLConnection — qual usar?

HttpClient (Java 11+) é o padrão moderno — use-o para novos projetos. OkHttp é maduro, amplamente usado no Android, com interceptores e pooling de conexões. HttpURLConnection funciona em todas as versões do Java, mas é verboso. Para Android/Kotlin, veja nosso conversor de curl para Kotlin. Para uma abordagem moderna semelhante, tente curl para C#.

Como lidar com autenticação em Java?

Defina o cabeçalho Authorization: request.header("Authorization", "Bearer " + token). Para autenticação Basic, codifique com Base64.getEncoder().encodeToString((user + ":" + pass).getBytes()). O HttpClient também suporta Authenticator para tratamento automático de credenciais.

Como enviar dados de formulário multipart em Java?

O HttpClient do Java 11+ requer a construção manual do corpo multipart com strings de boundary. Use HttpRequest.BodyPublishers.ofString() com partes formatadas manualmente. O OkHttp simplifica isso com MultipartBody.Builder. O curl2code gera o código multipart apropriado para a biblioteca Java escolhida.

Como lidar com erros HTTP em Java?

Com HttpClient, verifique response.statusCode() após cada requisição — ele não lança exceções em erros HTTP. Envolva as chamadas em try/catch para IOException (rede) e InterruptedException (assíncrono). O OkHttp lança IOException em falhas e fornece response.isSuccessful() para verificações de status.

Como fazer requisições HTTP assíncronas em Java?

O HttpClient fornece sendAsync() retornando CompletableFuture: client.sendAsync(request, BodyHandlers.ofString()).thenApply(HttpResponse::body). Encadeie com thenAccept(), thenCompose() ou use CompletableFuture.allOf() para requisições paralelas. O OkHttp usa enqueue() com uma interface Callback.

Como definir timeouts no Java HttpClient?

Defina no cliente: HttpClient.newBuilder().connectTimeout(Duration.ofSeconds(10)).build(). Por requisição: request.timeout(Duration.ofSeconds(30)). O OkHttp usa OkHttpClient.Builder().connectTimeout(10, TimeUnit.SECONDS).readTimeout(30, TimeUnit.SECONDS).

Como configurar um proxy em Java?

Com HttpClient: HttpClient.newBuilder().proxy(ProxySelector.of(new InetSocketAddress("proxy", 8080))).build(). O OkHttp usa a classe Proxy: new OkHttpClient.Builder().proxy(new Proxy(Proxy.Type.HTTP, address)). O Java também respeita as flags de JVM -Dhttp.proxyHost. O curl2code converte flags -x automaticamente.

Como enviar uma requisição POST com corpo JSON em Java?

Converta um comando curl POST como curl -X POST -H "Content-Type: application/json" -d "{"key":"value"}" URL para Java usando o curl2code. O código gerado usa HttpRequest.newBuilder().POST(BodyPublishers.ofString(jsonString)).build(). O curl2code detecta automaticamente as flags -d/--data com conteúdo JSON e define o cabeçalho Content-Type apropriado no código do HttpClient.

Como adicionar autorização com token Bearer em Java?

Passe curl -H "Authorization: Bearer YOUR_TOKEN" URL para o curl2code e ele gerará o código do HttpClient com o cabeçalho de autenticação: .header("Authorization", "Bearer YOUR_TOKEN"). O curl2code detecta tokens Bearer tanto de flags -H "Authorization: Bearer ..." quanto de --oauth2-bearer. Para Basic auth, use -u user:pass.

Como definir o cabeçalho Content-Type em Java?

O curl2code converte curl -H "Content-Type: application/json" URL para o código do HttpClient com o cabeçalho correto: .header("Content-Type", "application/json"). Para dados -d, o curl define por padrão application/x-www-form-urlencoded; para uploads de formulário com -F, ele usa multipart/form-data. O curl2code mapeia cada um para a API correta do HttpClient.

Links úteis

Guias do curl

Converter curl para outras linguagens