Converter curl para Java
Converta comandos curl para código Java utilizando a moderna API HttpClient. O curl2code é executado inteiramente no seu navegador através de WebAssembly — nenhuns dados saem do seu dispositivo. Para desenvolvimento em Kotlin, experimente o nosso conversor de curl para Kotlin. Para C# (.NET), veja curl para C#. Abaixo encontram-se exemplos de Java prontos a usar.
Como copiar o curl do seu navegador
- 1
Abrir as DevTools
Prima F12 ou Ctrl+Shift+I para abrir as ferramentas de programador do seu navegador.
- 2
Ir para o separador Network
Clique no separador Network e realize a ação que despoleta o pedido HTTP.
- 3
Copiar como cURL
Clique com o botão direito no pedido → Copy → Copy as cURL. Depois cole-o acima.
Perguntas Frequentes
O que é o HttpClient do Java?
O HttpClient do Java (introduzido no Java 11) é um cliente HTTP moderno e integrado que substitui o legado HttpURLConnection. Suporta HTTP/2, pedidos assíncronos, WebSocket e uma API de construtor fluente. Não são necessárias dependências externas. O curl2code também suporta OkHttp, Jsoup e HttpURLConnection como alternativas.
HttpClient vs OkHttp vs HttpURLConnection — qual usar?
O HttpClient (Java 11+) é o padrão moderno — use-o para novos projetos. O OkHttp é maduro, amplamente utilizado em Android, com intercetores e pooling de ligações. O HttpURLConnection funciona em todas as versões do Java, mas é verboso. Para Android/Kotlin, consulte o nosso conversor de curl para Kotlin. Para uma abordagem moderna semelhante, experimente curl para C#.
Como gerir a 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 gestão automática 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 limite. Use HttpRequest.BodyPublishers.ofString() com partes formatadas manualmente. O OkHttp simplifica isto com MultipartBody.Builder. O curl2code gera o código multipart adequado para a biblioteca Java escolhida.
Como gerir erros HTTP em Java?
Com o HttpClient, verifique response.statusCode() após cada pedido — 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 estado.
Como fazer pedidos HTTP assíncronos em Java?
O HttpClient fornece sendAsync() devolvendo um CompletableFuture: client.sendAsync(request, BodyHandlers.ofString()).thenApply(HttpResponse::body). Encadeie com thenAccept(), thenCompose() ou use CompletableFuture.allOf() para pedidos paralelos. O OkHttp usa enqueue() com uma interface Callback.
Como definir timeouts no HttpClient do Java?
Defina no cliente: HttpClient.newBuilder().connectTimeout(Duration.ofSeconds(10)).build(). Por pedido: 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 o 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 da JVM -Dhttp.proxyHost. O curl2code converte as flags -x automaticamente.
Como enviar um pedido POST com um 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 utiliza HttpRequest.newBuilder().POST(BodyPublishers.ofString(jsonString)).build(). O curl2code deteta automaticamente as flags -d/--data com conteúdo JSON e define o cabeçalho Content-Type apropriado no código HttpClient.
Como adicionar autorização com token Bearer em Java?
Passe curl -H "Authorization: Bearer YOUR_TOKEN" URL para o curl2code e este gera código HttpClient com o cabeçalho de autenticação: .header("Authorization", "Bearer YOUR_TOKEN"). O curl2code deteta tokens Bearer tanto de flags -H "Authorization: Bearer ..." como de --oauth2-bearer. Para Basic auth, utilize -u user:pass.
Como definir o cabeçalho Content-Type em Java?
O curl2code converte curl -H "Content-Type: application/json" URL para código HttpClient com o cabeçalho correto: .header("Content-Type", "application/json"). Para dados -d, o curl assume por defeito application/x-www-form-urlencoded; para envios de formulários -F, utiliza multipart/form-data. O curl2code mapeia cada um para a API HttpClient correta.
Links Úteis
Guias do curl
Códigos de erro do curl
Consulte qualquer código de saída do curl — causas, correções e dicas de depuração.
Transferir ficheiros com curl
Guarde ficheiros com -o, -O, siga redirecionamentos, retome transferências e mais.
SSL, TLS e proxy
Configure certificados, versões TLS, proxies HTTP/SOCKS e DNS personalizado.