Конвертувати curl у Julia
curl2code конвертує команди curl у код Julia за допомогою HTTP.jl. Конвертація виконується у вашому браузері через WebAssembly для повної приватності. Для Python перегляньте наш конвертер curl у Python. Для R дивіться curl у R. Нижче наведено практичні приклади на Julia.
Як скопіювати curl з вашого браузера
- 1
Відкрийте DevTools
Натисніть F12 або Ctrl+Shift+I, щоб відкрити інструменти розробника у вашому браузері.
- 2
Перейдіть на вкладку Network
Натисніть на вкладку Network і виконайте дію, яка ініціює HTTP-запит.
- 3
Скопіюйте як cURL
Клацніть правою кнопкою миші на запит → Copy → Copy as cURL. Потім вставте його вище.
Часті запитання
Що таке Julia HTTP.jl?
HTTP.jl — це стандартний пакет HTTP-клієнта та сервера для Julia. Він надає простий високорівневий API з пулом з'єднань, обробкою файлів cookie та підтримкою потокового передавання. Встановлюється за допомогою using Pkg; Pkg.add("HTTP"). Він добре інтегрується з системою множинної диспетчеризації Julia. curl2code використовує HTTP.jl для всіх конвертацій Julia.
HTTP.jl проти Downloads.jl проти LibCURL.jl — що використовувати?
HTTP.jl — це повнофункціональний HTTP-клієнт, використовуйте його для API та кастомних запитів. Downloads.jl — модуль стандартної бібліотеки для простого завантаження файлів. LibCURL.jl обгортає libcurl для специфічних функцій curl. Для більшості завдань HTTP.jl є правильним вибором. Для схожих клієнтів у наукових обчисленнях див. curl до Python або curl до R.
Як обробляти автентифікацію в Julia?
Передавайте заголовки як вектор пар: HTTP.get(url, ["Authorization" => "Bearer $token"]). Для Basic auth: ["Authorization" => "Basic $(base64encode("$user:$pass"))"]. Інтерполяція рядків у Julia за допомогою $ робить створення заголовків чистим. curl2code конвертує прапорці автентифікації в синтаксис Julia.
Як надіслати multipart form data в Julia?
Використовуйте HTTP.Form: HTTP.post(url, body=HTTP.Form(["file" => open("doc.pdf"), "desc" => "My file"])). HTTP.jl автоматично обробляє кодування multipart, розділювачі та Content-Type. curl2code конвертує прапорці -F у синтаксис HTTP.jl Form.
Як обробляти помилки HTTP в Julia?
За замовчуванням HTTP.jl видає HTTP.StatusError для відповідей, відмінних від 2xx. Вимкніть це за допомогою status_exception=false, щоб отримати відповідь безпосередньо. Використовуйте try ... catch e для обробки помилок. Перевіряйте e.status для отримання коду HTTP. Мережеві помилки викликають HTTP.IOError.
Як робити конкурентні HTTP-запити в Julia?
Використовуйте завдання @async: tasks = [@async HTTP.get(url) for url in urls], потім responses = fetch.(tasks). Для справжнього паралелізму використовуйте Threads.@threads або Distributed. Завдання на основі корутин у Julia ефективні для конкурентних запитів, обмежених введенням-виведенням.
Як встановити таймаути в Julia?
Передайте ключове слово readtimeout: HTTP.get(url, readtimeout=30). Для таймауту з'єднання використовуйте connect_timeout. Для повторних спроб використовуйте retry=true з retries=3. HTTP.jl має вбудовану функцію повтору з експоненціальною затримкою. Вони відповідають параметрам curl --max-time та --connect-timeout.
Як використовувати проксі в Julia?
Передайте ключове слово proxy: HTTP.get(url, proxy="http://proxy:8080"). HTTP.jl також за замовчуванням враховує змінні середовища HTTP_PROXY та HTTPS_PROXY. Для проксі з автентифікацією додайте облікові дані в URL проксі: http://user:pass@proxy:8080.
Як надіслати POST-запит із тілом JSON у Julia?
Конвертуйте команду curl POST, таку як curl -X POST -H "Content-Type: application/json" -d '{"key":"value"}' URL, у Julia за допомогою curl2code. Згенерований код використовує HTTP.post(url, ['Content-Type' => 'application/json'], JSON3.write(data)). curl2code автоматично виявляє прапорці -d/--data із вмістом JSON і встановлює відповідний заголовок Content-Type у коді HTTP.jl.
Як додати авторизацію за допомогою Bearer-токена у Julia?
Передайте curl -H "Authorization: Bearer YOUR_TOKEN" URL у curl2code, і він згенерує код HTTP.jl із заголовком авторизації: ['Authorization' => 'Bearer YOUR_TOKEN']. curl2code виявляє Bearer-токени як у прапорцях -H "Authorization: Bearer ...", так і в --oauth2-bearer. Для Basic auth використовуйте -u user:pass.
Як встановити заголовок Content-Type у Julia?
curl2code конвертує curl -H "Content-Type: application/json" URL у код HTTP.jl із відповідним заголовком: ['Content-Type' => 'application/json']. Для даних -d curl за замовчуванням використовує application/x-www-form-urlencoded; для завантаження форм -F використовується multipart/form-data. curl2code зіставляє кожен варіант із правильним HTTP.jl API.
Корисні посилання
Посібники з curl
Коди помилок curl
Знайдіть будь-який код завершення curl — причини, виправлення та поради з налагодження.
Завантаження файлів за допомогою curl
Зберігайте файли з -o, -O, слідкуйте за перенаправленнями, відновлюйте завантаження та інше.
SSL, TLS та проксі
Налаштування сертифікатів, версій TLS, HTTP/SOCKS-проксі та власного DNS.