Конвертувати curl у Kotlin

curl2code конвертує команди curl у код Kotlin за допомогою OkHttp. Конвертація виконується у вашому браузері через WebAssembly для повної приватності. Для Java перегляньте наш конвертер curl у Java. Для Swift (iOS) дивіться curl у Swift. Нижче наведено практичні приклади на Kotlin.

Як скопіювати curl з вашого браузера

  1. 1

    Відкрийте DevTools

    Натисніть F12 або Ctrl+Shift+I, щоб відкрити інструменти розробника у вашому браузері.

  2. 2

    Перейдіть на вкладку Network

    Натисніть на вкладку Network і виконайте дію, яка ініціює HTTP-запит.

  3. 3

    Скопіюйте як cURL

    Клацніть правою кнопкою миші на запит → CopyCopy as cURL. Потім вставте його вище.

Часті запитання

Що таке Kotlin OkHttp?

OkHttp — це популярний HTTP-клієнт для Kotlin та Java, розроблений Square. Він має пул з'єднань, прозорий GZIP, кешування відповідей та підтримку HTTP/2. Додайте за допомогою implementation("com.squareup.okhttp3:okhttp:4.x"). Це стандартна бібліотека, яку curl2code використовує для перетворень у Kotlin, і стандартний HTTP-клієнт для Android.

OkHttp проти Ktor Client проти Fuel — що вибрати?

OkHttp — це галузевий стандарт, особливо для Android. Ktor Client орієнтований на Kotlin, має підтримку корутин та мультиплатформність. Fuel — легка бібліотека з чистим Kotlin DSL. Для Android OkHttp (часто через Retrofit) є вибором за замовчуванням. Для порівняння JVM дивіться наш конвертер curl у Java.

Як обробляти автентифікацію в Kotlin?

Додайте заголовок: request.addHeader("Authorization", "Bearer $token"). Для Basic-автентифікації використовуйте утиліту Credentials.basic(user, pass). OkHttp також підтримує інтерфейс Authenticator для автоматичного повтору з обліковими даними при відповідях 401. curl2code автоматично обробляє прапорці -u та Bearer.

Як надіслати дані форми multipart в Kotlin?

Використовуйте MultipartBody.Builder() в OkHttp: .addFormDataPart("file", filename, fileBody) для файлів та .addFormDataPart("key", "value") для полів. Встановіть .setType(MultipartBody.FORM). curl2code перетворює прапорці -F у відповідний код конструктора multipart OkHttp.

Як обробляти помилки HTTP в Kotlin?

Перевірте response.isSuccessful для статусів 2xx або прочитайте response.code. OkHttp викидає IOException при мережевих збоях. Використовуйте runCatching { } або try/catch у Kotlin для чистої обробки помилок. Завжди закривайте тіло відповіді за допомогою блоку .use { }, щоб запобігти витоку ресурсів.

Як використовувати корутини з OkHttp?

Огорніть блокуючі виклики OkHttp у withContext(Dispatchers.IO) { client.newCall(request).execute() }. Або використовуйте розширення suspendCancellableCoroutine з enqueue() для справжньої асинхронності. Ktor Client має вбудовану нативну підтримку корутин. Для подібних асинхронних патернів дивіться curl у Swift (async/await).

Як встановити таймаути в Kotlin OkHttp?

Налаштуйте в клієнті: OkHttpClient.Builder().connectTimeout(10, TimeUnit.SECONDS).readTimeout(30, TimeUnit.SECONDS).writeTimeout(30, TimeUnit.SECONDS).build(). Для повторів додайте інтерцептор, який повторює спробу при збої. Вони відповідають опціям curl --connect-timeout та --max-time.

Як використовувати проксі з OkHttp?

Встановіть у конструкторі клієнта: OkHttpClient.Builder().proxy(Proxy(Proxy.Type.HTTP, InetSocketAddress("proxy", 8080))).build(). Для автентифікації додайте proxyAuthenticator. OkHttp також підтримує SOCKS-проксі з Proxy.Type.SOCKS. curl2code перетворює прапорці -x у цю конфігурацію.

Як надіслати POST-запит із тілом JSON у Kotlin?

Конвертуйте команду curl POST, таку як curl -X POST -H "Content-Type: application/json" -d "{"key":"value"}" URL, у Kotlin за допомогою curl2code. Згенерований код використовує RequestBody.create(MediaType.parse("application/json"), json). curl2code автоматично виявляє прапорці -d/--data із вмістом JSON і встановлює відповідний заголовок Content-Type у коді OkHttp.

Як додати авторизацію за допомогою Bearer-токена у Kotlin?

Передайте curl -H "Authorization: Bearer YOUR_TOKEN" URL у curl2code, і він згенерує код OkHttp із заголовком авторизації: .addHeader("Authorization", "Bearer YOUR_TOKEN"). curl2code виявляє Bearer-токени як у прапорцях -H "Authorization: Bearer ...", так і в --oauth2-bearer. Для Basic auth використовуйте -u user:pass.

Як встановити заголовок Content-Type у Kotlin?

curl2code конвертує curl -H "Content-Type: application/json" URL у код OkHttp із відповідним заголовком: .addHeader("Content-Type", "application/json"). Для даних -d curl за замовчуванням використовує application/x-www-form-urlencoded; для завантаження форм -F використовується multipart/form-data. curl2code зіставляє кожен варіант із правильним OkHttp API.

Корисні посилання

Посібники з curl

Конвертувати curl в інші мови