Converter curl para Kotlin

O curl2code converte comandos curl para código Kotlin utilizando OkHttp. A conversão é executada no seu navegador através de WebAssembly para total privacidade. Para Java, consulte o nosso conversor de curl para Java. Para Swift (iOS), veja curl para Swift. Abaixo encontram-se exemplos práticos de Kotlin.

Como copiar o curl do seu navegador

  1. 1

    Abrir as DevTools

    Prima F12 ou Ctrl+Shift+I para abrir as ferramentas de programador do seu navegador.

  2. 2

    Ir para o separador Network

    Clique no separador Network e realize a ação que despoleta o pedido HTTP.

  3. 3

    Copiar como cURL

    Clique com o botão direito no pedido → CopyCopy as cURL. Depois cole-o acima.

Perguntas Frequentes

O que é o Kotlin OkHttp?

OkHttp é um cliente HTTP amplamente utilizado para Kotlin e Java, desenvolvido pela Square. Possui pooling de ligações, GZIP transparente, cache de respostas e suporte para HTTP/2. Adicione com implementation("com.squareup.okhttp3:okhttp:4.x"). É a biblioteca padrão que o curl2code utiliza para conversões Kotlin e é o cliente HTTP padrão para Android.

OkHttp vs Ktor Client vs Fuel — qual usar?

OkHttp é o padrão da indústria, especialmente para Android. Ktor Client é focado em Kotlin com suporte para corrotinas e capacidade multiplataforma. Fuel é leve com um DSL Kotlin limpo. Para Android, o OkHttp (frequentemente via Retrofit) é a escolha padrão. Para comparação JVM, consulte o nosso conversor de curl para Java.

Como gerir a autenticação em Kotlin?

Adicione um cabeçalho: request.addHeader("Authorization", "Bearer $token"). Para autenticação Basic: use o utilitário Credentials.basic(user, pass). O OkHttp também suporta a interface Authenticator para repetição automática com credenciais em respostas 401. O curl2code gere as flags -u e Bearer automaticamente.

Como enviar dados de formulário multipart em Kotlin?

Use o MultipartBody.Builder() do OkHttp: .addFormDataPart("file", filename, fileBody) para ficheiros e .addFormDataPart("key", "value") para campos. Defina .setType(MultipartBody.FORM). O curl2code converte as flags -F para o código correto do construtor multipart do OkHttp.

Como gerir erros HTTP em Kotlin?

Verifique response.isSuccessful para o estado 2xx ou leia response.code. O OkHttp lança IOException em falhas de rede. Use o runCatching { } do Kotlin ou try/catch para uma gestão de erros limpa. Feche sempre o corpo da resposta com um bloco .use { } para evitar fugas de recursos.

Como usar corrotinas com OkHttp?

Envolva chamadas bloqueantes do OkHttp em withContext(Dispatchers.IO) { client.newCall(request).execute() }. Ou use a extensão suspendCancellableCoroutine com enqueue() para assincronismo real. O Ktor Client tem suporte nativo para corrotinas integrado. Para padrões assíncronos semelhantes, consulte curl para Swift (async/await).

Como definir timeouts no Kotlin OkHttp?

Configure no construtor do cliente: OkHttpClient.Builder().connectTimeout(10, TimeUnit.SECONDS).readTimeout(30, TimeUnit.SECONDS).writeTimeout(30, TimeUnit.SECONDS).build(). Para repetições, adicione um interceptor que repete em caso de falha. Estes mapeiam para --connect-timeout e --max-time do curl.

Como usar um proxy com OkHttp?

Defina no construtor do cliente: OkHttpClient.Builder().proxy(Proxy(Proxy.Type.HTTP, InetSocketAddress("proxy", 8080))).build(). Para autenticação, adicione proxyAuthenticator. O OkHttp também suporta proxies SOCKS com Proxy.Type.SOCKS. O curl2code converte as flags -x para esta configuração.

Como enviar um pedido POST com um corpo JSON em Kotlin?

Converta um comando curl POST como curl -X POST -H "Content-Type: application/json" -d "{"key":"value"}" URL para Kotlin usando o curl2code. O código gerado utiliza RequestBody.create(MediaType.parse("application/json"), json). O curl2code deteta automaticamente as flags -d/--data com conteúdo JSON e define o cabeçalho Content-Type apropriado no código OkHttp.

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

Passe curl -H "Authorization: Bearer YOUR_TOKEN" URL para o curl2code e este gera código OkHttp com o cabeçalho de autenticação: .addHeader("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 Kotlin?

O curl2code converte curl -H "Content-Type: application/json" URL para código OkHttp com o cabeçalho correto: .addHeader("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 OkHttp correta.

Links Úteis

Guias do curl

Converter curl para Outras Linguagens