Konvertujte curl u Elixir
Konvertujte curl komande u Elixir kod koristeći HTTPoison. curl2code se u potpunosti izvršava u vašem veb pregledaču putem WebAssembly-a — vaši podaci ostaju privatni. Za Ruby, isprobajte naš curl u Ruby konvertor. Za Go, pogledajte curl u Go. Ispod su Elixir primeri spremni za upotrebu.
Kako kopirati curl iz vašeg pregledača
- 1
Otvorite DevTools
Pritisnite F12 ili Ctrl+Shift+I da biste otvorili razvojne alate pregledača.
- 2
Idite na karticu Network
Kliknite na karticu Network i izvršite radnju koja pokreće HTTP zahtev.
- 3
Kopirajte kao cURL
Desni klik na zahtev → Copy → Copy as cURL. Zatim ga nalepite iznad.
Često postavljana pitanja
Šta je Elixir HTTPoison?
HTTPoison je najpopularniji HTTP klijent za Elixir, izgrađen na vrhu Erlang hackney biblioteke. Pruža čist, funkcionalan API za GET, POST, strimovanje i asinkrone zahteve. Dodajte u mix.exs zavisnosti: {:httpoison, "~> 2.0"}. curl2code koristi HTTPoison kao podrazumevani za Elixir konverzije.
HTTPoison naspram Req naspram Tesla naspram Finch — koji koristiti?
HTTPoison je najutvrđeniji i najšire korišćen. Req je noviji, dolazi sa uključenim funkcijama za ponavljanje i autentifikaciju. Tesla nudi middleware arhitekturu sličnu Faraday-u. Finch je niskog nivoa, visokih performansi za produkcionu upotrebu. Za slične funkcionalne pristupe, pogledajte curl u Clojure ili curl u Ruby.
Kako upravljati autentifikacijom u Elixir-u?
Prosledite zaglavlja kao listu string tuple-ova: HTTPoison.get(url, [{"Authorization", "Bearer token"}]). Za Basic auth, enkodirajte user:pass sa Base.encode64/1 i dodajte prefiks "Basic " na vrednost. Pattern match-ujte odgovor za {:ok, response} ili {:error, reason}. curl2code konvertuje -H i -u flegove u idiomatski Elixir.
Kako poslati multipart form data u Elixir-u?
Koristite {:multipart, parts} kao telo: HTTPoison.post(url, {:multipart, [{:file, path, {"form-data", [{"name", "file"}, {"filename", "doc.pdf"}]}, []}]}). Za jednostavna polja forme, dodajte {"key", "value"} tuple-ove. curl2code rukuje -F zastavicama za HTTPoison multipart.
Kako upravljati greškama u Elixir HTTP zahtevima?
HTTPoison vraća tagovane tuple-ove: {:ok, response} ili {:error, reason}. Pattern match-ujte sa case ili with: case HTTPoison.get(url) do {:ok, %{status_code: 200}'} -> ... ; {:error, %{reason: reason}'} -> ... end. Ovo je idiomatski Elixir — eksplicitno, iscrpno upravljanje greškama bez izuzetaka.
Kako praviti konkurentne HTTP zahteve u Elixir-u?
Koristite Task.async/1 i Task.await/1: tasks = urls |> Enum.map(&Task.async(fn -> HTTPoison.get(&1) end)) zatim results = tasks |> Enum.map(&Task.await/1). Elixir-ova BEAM VM efikasno upravlja hiljadama konkurentnih procesa. Za sličnu konkurentnost, pogledajte curl u Go.
Kako podesiti timeout-e u Elixir-u?
Prosledite opcije HTTPoison-u: HTTPoison.get(url, [], [timeout: 30_000, recv_timeout: 30_000]). timeout je timeout veze, recv_timeout je timeout odgovora (oba u milisekundama). Za ponavljanja, obmotajte u rekurzivnu funkciju sa smanjenjem broja pokušaja ili koristite ugrađeni retry Req biblioteke.
Kako koristiti proksi u Elixir-u?
Prosledite opciju proksija HTTPoison-u: HTTPoison.get(url, [], [proxy: {"proxy.host", 8080}]). Za autentifikovane proksije, koristite proxy_auth: {"user", "pass"}. HTTPoison takođe podržava SOCKS5 proksije preko osnovne hackney biblioteke. curl2code konvertuje -x zastavice u Elixir konfiguraciju proksija.
Kako poslati POST zahtev sa JSON telom u Elixir jeziku?
Konvertujte curl POST komandu kao što je curl -X POST -H "Content-Type: application/json" -d '{"key":"value"}' URL u Elixir koristeći curl2code. Generisani kod koristi HTTPoison.post(url, Jason.encode!(body), [{'Content-Type', 'application/json'}]). curl2code automatski detektuje -d/--data flegove sa JSON sadržajem i postavlja odgovarajući Content-Type zaglavlje u HTTPoison kodu.
Kako dodati Bearer token autorizaciju u Elixir jeziku?
Prosledite curl -H "Authorization: Bearer YOUR_TOKEN" URL u curl2code i on generiše HTTPoison kod sa zaglavljem za autorizaciju: [{'Authorization', 'Bearer YOUR_TOKEN'}]. curl2code detektuje Bearer tokene iz -H "Authorization: Bearer ..." i --oauth2-bearer flegova. Za Basic auth, koristite -u user:pass.
Kako postaviti Content-Type zaglavlje u Elixir jeziku?
curl2code konvertuje curl -H "Content-Type: application/json" URL u HTTPoison kod sa ispravnim zaglavljem: [{'Content-Type', 'application/json'}]. Za -d podatke, curl podrazumevano koristi application/x-www-form-urlencoded; za -F otpremanje formi, koristi multipart/form-data. curl2code mapira svaki u odgovarajući HTTPoison API.
Korisni linkovi
Водичи за curl
curl кодови грешака
Пронађите било који излазни код curl — узроке, решења и савете за отклањање грешака.
Преузимање фајлова помоћу curl
Чувајте фајлове са -o, -O, пратите преусмеравања, наставите преузимања и још много тога.
SSL, TLS и прокси
Подесите сертификате, верзије TLS, HTTP/SOCKS проксије и прилагођени DNS.