Converti curl in Kotlin
curl2code converte i comandi curl in codice Kotlin utilizzando OkHttp. La conversione avviene nel tuo browser tramite WebAssembly per la massima privacy. Per Java, consulta il nostro convertitore da curl a Java. Per Swift (iOS), vedi da curl a Swift. Di seguito sono riportati esempi pratici in Kotlin.
Come copiare curl dal tuo browser
- 1
Apri DevTools
Premi F12 o Ctrl+Shift+I per aprire gli strumenti per sviluppatori del browser.
- 2
Vai alla scheda Network
Fai clic sulla scheda Network ed esegui l'azione che attiva la richiesta HTTP.
- 3
Copia come cURL
Fai clic con il tasto destro sulla richiesta → Copia → Copia come cURL. Quindi incollalo sopra.
Domande Frequenti
Cos'è Kotlin OkHttp?
OkHttp è un client HTTP ampiamente utilizzato per Kotlin e Java, sviluppato da Square. Offre connection pooling, GZIP trasparente, caching delle risposte e supporto HTTP/2. Aggiungilo con implementation("com.squareup.okhttp3:okhttp:4.x"). È la libreria predefinita che curl2code usa per le conversioni Kotlin ed è il client HTTP standard per Android.
OkHttp vs Ktor Client vs Fuel — quale usare?
OkHttp è lo standard del settore, specialmente per Android. Ktor Client è orientato a Kotlin con supporto alle coroutine e capacità multipiattaforma. Fuel è leggero con un DSL Kotlin pulito. Per Android, OkHttp (spesso tramite Retrofit) è la scelta predefinita. Per un confronto JVM, vedi il nostro convertitore da curl a Java.
Come gestire l'autenticazione in Kotlin?
Aggiungi un header: request.addHeader("Authorization", "Bearer $token"). Per l'autenticazione Basic: usa l'utility Credentials.basic(user, pass). OkHttp supporta anche l'interfaccia Authenticator per il retry automatico con credenziali sulle risposte 401. curl2code gestisce automaticamente i flag -u e Bearer.
Come inviare dati form multipart in Kotlin?
Usa MultipartBody.Builder() di OkHttp: .addFormDataPart("file", filename, fileBody) per i file e .addFormDataPart("key", "value") per i campi. Imposta .setType(MultipartBody.FORM). curl2code converte i flag -F nel corretto codice del builder multipart di OkHttp.
Come gestire gli errori HTTP in Kotlin?
Controlla response.isSuccessful per lo stato 2xx o leggi response.code. OkHttp lancia IOException in caso di guasti di rete. Usa runCatching { } di Kotlin o try/catch per una gestione pulita degli errori. Chiudi sempre il corpo della risposta con un blocco .use { } per evitare leak di risorse.
Come usare le coroutine con OkHttp?
Avvolgi le chiamate OkHttp bloccanti in withContext(Dispatchers.IO) { client.newCall(request).execute() }. Oppure usa l'estensione suspendCancellableCoroutine con enqueue() per un vero asincrono. Ktor Client ha il supporto nativo alle coroutine integrato. Per pattern asincroni simili, vedi curl a Swift (async/await).
Come impostare i timeout in Kotlin OkHttp?
Configura sul client: OkHttpClient.Builder().connectTimeout(10, TimeUnit.SECONDS).readTimeout(30, TimeUnit.SECONDS).writeTimeout(30, TimeUnit.SECONDS).build(). Per i retry, aggiungi un intercettatore che riprova in caso di errore. Questi corrispondono a --connect-timeout e --max-time di curl.
Come usare un proxy con OkHttp?
Imposta sul builder del client: OkHttpClient.Builder().proxy(Proxy(Proxy.Type.HTTP, InetSocketAddress("proxy", 8080))).build(). Per l'autenticazione, aggiungi proxyAuthenticator. OkHttp supporta anche i proxy SOCKS con Proxy.Type.SOCKS. curl2code converte i flag -x in questa configurazione.
Come inviare una richiesta POST con un corpo JSON in Kotlin?
Converti un comando curl POST come curl -X POST -H "Content-Type: application/json" -d "{"key":"value"}" URL in Kotlin usando curl2code. Il codice generato utilizza RequestBody.create(MediaType.parse("application/json"), json). curl2code rileva automaticamente i flag -d/--data con contenuto JSON e imposta l'intestazione Content-Type appropriata nel codice OkHttp.
Come aggiungere l''autorizzazione con Bearer token in Kotlin?
Passa curl -H "Authorization: Bearer YOUR_TOKEN" URL a curl2code e genererà il codice OkHttp con l'intestazione di autenticazione: .addHeader("Authorization", "Bearer YOUR_TOKEN"). curl2code rileva i Bearer token sia dai flag -H "Authorization: Bearer ..." che --oauth2-bearer. Per la Basic auth, usa -u user:pass.
Come impostare l''intestazione Content-Type in Kotlin?
curl2code converte curl -H "Content-Type: application/json" URL in codice OkHttp con l'intestazione corretta: .addHeader("Content-Type", "application/json"). Per i dati -d, curl utilizza come predefinito application/x-www-form-urlencoded; per i caricamenti di moduli -F, utilizza multipart/form-data. curl2code mappa ciascuno alla corretta API di OkHttp.