Converteer curl naar Elixir
Converteer curl-opdrachten naar Elixir-code met HTTPoison. curl2code wordt volledig in je browser uitgevoerd via WebAssembly — je gegevens blijven privé. Voor Ruby, probeer onze curl naar Ruby-converter. Voor Go, zie curl naar Go. Hieronder staan kant-en-klare Elixir-voorbeelden.
Hoe je curl kopieert vanuit je browser
- 1
Open Ontwikkelaarstools
Druk op F12 of Ctrl+Shift+I om de ontwikkelaarstools van je browser te openen.
- 2
Ga naar het tabblad Netwerk
Klik op het tabblad Netwerk en voer de actie uit die het HTTP-verzoek activeert.
- 3
Kopiëren als cURL
Klik met de rechtermuisknop op het verzoek → Kopiëren → Kopiëren als cURL. Plak het vervolgens hierboven.
Veelgestelde vragen
Wat is Elixir HTTPoison?
HTTPoison is de populairste HTTP-client voor Elixir, gebouwd op de Erlang hackney-bibliotheek. Het biedt een schone, functionele API voor GET, POST, streaming en async-verzoeken. Voeg toe aan mix.exs deps: {:httpoison, "~> 2.0"}. curl2code gebruikt HTTPoison als standaard voor Elixir-conversies.
HTTPoison vs Req vs Tesla vs Finch — welke te gebruiken?
HTTPoison is de meest gevestigde en meest gebruikte. Req is nieuwer, inclusief alles zoals herhalingen en auth. Tesla biedt middleware-architectuur zoals Faraday. Finch is op een laag niveau, krachtig voor productiegebruik. Zie voor vergelijkbare functionele benaderingen curl naar Clojure of curl naar Ruby.
Hoe ga je om met authenticatie in Elixir?
Geef headers door als een lijst van string-tuples: HTTPoison.get(url, [{"Authorization", "Bearer token"}]). Voor Basic auth codeert u user:pass met Base.encode64/1 en voegt u "Basic " toe aan het begin van de waarde. Gebruik pattern matching op de respons voor {:ok, response} of {:error, reason}. curl2code zet -H en -u vlaggen om naar idiomatisch Elixir.
Hoe verstuur je multipart form-data in Elixir?
Gebruik {:multipart, parts} als de body: HTTPoison.post(url, {:multipart, [{:file, path, {"form-data", [{"name", "file"}, {"filename", "doc.pdf"}]}, []}]}). Voeg voor eenvoudige formuliervelden {"key", "value"} tuples toe. curl2code verwerkt -F vlaggen voor HTTPoison multipart.
Hoe ga je om met fouten in Elixir HTTP-verzoeken?
HTTPoison retourneert getagde tuples: {:ok, response} of {:error, reason}. Pattern match met case of with: case HTTPoison.get(url) do {:ok, %{status_code: 200}'} -> ... ; {:error, %{reason: reason}'} -> ... end. Dit is idiomatisch Elixir — expliciete, uitputtende foutafhandeling zonder uitzonderingen.
Hoe maak je gelijktijdige HTTP-verzoeken in Elixir?
Gebruik Task.async/1 en Task.await/1: tasks = urls |> Enum.map(&Task.async(fn -> HTTPoison.get(&1) end)) en vervolgens results = tasks |> Enum.map(&Task.await/1). Elixir's BEAM VM verwerkt duizenden gelijktijdige processen efficiënt. Zie voor vergelijkbare gelijktijdigheid curl naar Go.
Hoe stel je timeouts in in Elixir?
Geef opties door aan HTTPoison: HTTPoison.get(url, [], [timeout: 30_000, recv_timeout: 30_000]). timeout is de verbindingstimeout, recv_timeout is de responstimeout (beide in milliseconden). Wikkel voor herhalingen in een recursieve functie met afnemende pogingen of gebruik de ingebouwde herhaling van de Req-bibliotheek.
Hoe gebruik je een proxy in Elixir?
Geef de proxy-optie door aan HTTPoison: HTTPoison.get(url, [], [proxy: {"proxy.host", 8080}]). Gebruik voor geauthenticeerde proxies proxy_auth: {"user", "pass"}. HTTPoison ondersteunt ook SOCKS5-proxies via de onderliggende hackney-bibliotheek. curl2code zet -x vlaggen om naar Elixir proxy-configuratie.
Hoe verstuur je een POST-verzoek met een JSON body in Elixir?
Converteer een curl POST-commando zoals curl -X POST -H "Content-Type: application/json" -d '{"key":"value"}' URL naar Elixir met curl2code. De gegenereerde code gebruikt HTTPoison.post(url, Jason.encode!(body), [{'Content-Type', 'application/json'}]). curl2code detecteert automatisch -d/--data flags met JSON-inhoud en stelt de juiste Content-Type header in de HTTPoison code in.
Hoe voeg je Bearer token autorisatie toe in Elixir?
Geef curl -H "Authorization: Bearer YOUR_TOKEN" URL door aan curl2code en het genereert HTTPoison code met de auth header: [{'Authorization', 'Bearer YOUR_TOKEN'}]. curl2code detecteert Bearer tokens van zowel -H "Authorization: Bearer ..." als --oauth2-bearer flags. Gebruik voor Basic auth -u user:pass.
Hoe stel je de Content-Type header in in Elixir?
curl2code converteert curl -H "Content-Type: application/json" URL naar HTTPoison code met de juiste header: [{'Content-Type', 'application/json'}]. Voor -d data gebruikt curl standaard application/x-www-form-urlencoded; voor -F formulier-uploads wordt multipart/form-data gebruikt. curl2code koppelt elk type aan de juiste HTTPoison API.