Конвертувати curl у Java
Конвертуйте команди curl у код Java за допомогою сучасного HttpClient API. curl2code працює повністю у вашому браузері через WebAssembly — жодні дані не залишають ваш пристрій. Для розробки на Kotlin спробуйте наш конвертер curl у Kotlin. Для C# (.NET) дивіться curl у C#. Нижче наведено готові до використання приклади на Java.
Як скопіювати curl з вашого браузера
- 1
Відкрийте DevTools
Натисніть F12 або Ctrl+Shift+I, щоб відкрити інструменти розробника у вашому браузері.
- 2
Перейдіть на вкладку Network
Натисніть на вкладку Network і виконайте дію, яка ініціює HTTP-запит.
- 3
Скопіюйте як cURL
Клацніть правою кнопкою миші на запит → Copy → Copy as cURL. Потім вставте його вище.
Часті запитання
Що таке Java HttpClient?
Java HttpClient (введений у Java 11) — це сучасний вбудований HTTP-клієнт, який замінює застарілий HttpURLConnection. Він підтримує HTTP/2, асинхронні запити, WebSocket та текучий API побудови (builder API). Зовнішні залежності не потрібні. curl2code також підтримує OkHttp, Jsoup та HttpURLConnection як альтернативи.
HttpClient проти OkHttp проти HttpURLConnection — що використовувати?
HttpClient (Java 11+) — це сучасний стандарт, використовуйте його для нових проєктів. OkHttp — зріла бібліотека, що широко використовується в Android, з інтерцепторами та пулом з'єднань. HttpURLConnection працює на всіх версіях Java, але дуже багатослівна. Для Android/Kotlin дивіться наш конвертер curl у Kotlin. Для подібного сучасного підходу спробуйте curl у C#.
Як керувати автентифікацією в Java?
Встановіть заголовок Authorization: request.header("Authorization", "Bearer " + token). Для Basic-автентифікації закодуйте за допомогою Base64.getEncoder().encodeToString((user + ":" + pass).getBytes()). HttpClient також підтримує Authenticator для автоматичної обробки облікових даних.
Як надіслати multipart дані форми в Java?
Java 11+ HttpClient потребує ручної побудови тіла multipart з рядками меж (boundary). Використовуйте HttpRequest.BodyPublishers.ofString() з вручну відформатованими частинами. OkHttp спрощує це за допомогою MultipartBody.Builder. curl2code генерує відповідний код multipart для обраної вами бібліотеки Java.
Як обробляти помилки HTTP в Java?
З HttpClient перевіряйте response.statusCode() після кожного запиту — він не викидає винятків при помилках HTTP. Огортайте виклики у try/catch для IOException (мережа) та InterruptedException (асинхронність). OkHttp викидає IOException при збоях і надає response.isSuccessful() для перевірки статусу.
Як робити асинхронні HTTP-запити в Java?
HttpClient надає sendAsync(), що повертає CompletableFuture: client.sendAsync(request, BodyHandlers.ofString()).thenApply(HttpResponse::body). Використовуйте ланцюжки з thenAccept(), thenCompose() або CompletableFuture.allOf() для паралельних запитів. OkHttp використовує enqueue() з інтерфейсом Callback.
Як встановити таймаути в Java HttpClient?
Встановіть на клієнті: HttpClient.newBuilder().connectTimeout(Duration.ofSeconds(10)).build(). Для окремого запиту: request.timeout(Duration.ofSeconds(30)). OkHttp використовує OkHttpClient.Builder().connectTimeout(10, TimeUnit.SECONDS).readTimeout(30, TimeUnit.SECONDS).
Як налаштувати проксі в Java?
З HttpClient: HttpClient.newBuilder().proxy(ProxySelector.of(new InetSocketAddress("proxy", 8080))).build(). OkHttp використовує клас Proxy: new OkHttpClient.Builder().proxy(new Proxy(Proxy.Type.HTTP, address)). Java також підтримує JVM-прапорці -Dhttp.proxyHost. curl2code автоматично конвертує прапорці -x.
Як надіслати POST-запит із тілом JSON у Java?
Конвертуйте команду curl POST, таку як curl -X POST -H "Content-Type: application/json" -d "{"key":"value"}" URL, у Java за допомогою curl2code. Згенерований код використовує HttpRequest.newBuilder().POST(BodyPublishers.ofString(jsonString)).build(). curl2code автоматично виявляє прапорці -d/--data із вмістом JSON і встановлює відповідний заголовок Content-Type у коді HttpClient.
Як додати авторизацію за допомогою Bearer-токена у Java?
Передайте curl -H "Authorization: Bearer YOUR_TOKEN" URL у curl2code, і він згенерує код HttpClient із заголовком авторизації: .header("Authorization", "Bearer YOUR_TOKEN"). curl2code виявляє Bearer-токени як у прапорцях -H "Authorization: Bearer ...", так і в --oauth2-bearer. Для Basic auth використовуйте -u user:pass.
Як встановити заголовок Content-Type у Java?
curl2code конвертує curl -H "Content-Type: application/json" URL у код HttpClient із відповідним заголовком: .header("Content-Type", "application/json"). Для даних -d curl за замовчуванням використовує application/x-www-form-urlencoded; для завантаження форм -F використовується multipart/form-data. curl2code зіставляє кожен варіант із правильним HttpClient API.
Корисні посилання
Посібники з curl
Коди помилок curl
Знайдіть будь-який код завершення curl — причини, виправлення та поради з налагодження.
Завантаження файлів за допомогою curl
Зберігайте файли з -o, -O, слідкуйте за перенаправленнями, відновлюйте завантаження та інше.
SSL, TLS та проксі
Налаштування сертифікатів, версій TLS, HTTP/SOCKS-проксі та власного DNS.