Конвертиране на 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 от високо ниво с пулинг на връзките, управление на бисквитки и поддръжка на стрийминг. Инсталирайте с 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 автентикация: ["Authorization" => "Basic $(base64encode("$user:$pass"))"]. Интерполацията на низове в Julia с $ прави конструирането на хедъри чисто. curl2code конвертира флаговете за автентикация в синтаксис на Julia.
Как да изпратя multipart form данни в Julia?
Използвайте HTTP.Form: HTTP.post(url, body=HTTP.Form(["file" => open("doc.pdf"), "desc" => "My file"])). HTTP.jl автоматично обработва multipart кодирането, границите (boundaries) и 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, базирани на корутини, са ефективни за паралелни I/O заявки.
Как да задам таймаути в Julia?
Предайте ключовата дума readtimeout: HTTP.get(url, readtimeout=30). За таймаут на връзката използвайте connect_timeout. За повторни опити използвайте retry=true с retries=3. HTTP.jl има вградена логика за повторен опит с експоненциално изчакване. Те съответстват на --max-time и --connect-timeout на curl.
Как да използвам прокси в 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 token оторизация в 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.