Converteer curl naar Rust
curl2code converteert curl-opdrachten naar Rust-code met de reqwest-crate. De conversie wordt in je browser uitgevoerd via WebAssembly voor volledige privacy. Voor Go, bekijk onze curl naar Go-converter. Voor C, zie curl naar C. Hieronder staan praktische Rust-voorbeelden met async/await.
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 Rust reqwest?
reqwest is de populairste HTTP-client voor Rust, gebouwd bovenop hyper. Het biedt zowel blocking als async API's, automatische JSON-serialisatie via serde, TLS, cookie-afhandeling en proxy-ondersteuning. Voeg toe met cargo add reqwest --features json. Het is de standaardbibliotheek die curl2code gebruikt voor Rust-conversies.
reqwest vs hyper vs ureq — welke moet ik gebruiken?
reqwest is de go-to voor de meeste projecten — high-level, rijk aan functies en async. hyper is low-level en geeft maximale controle (reqwest is erop gebouwd). ureq is een minimale, alleen-blocking client zonder async runtime-afhankelijkheid. Zie voor een vergelijkbare standaardbibliotheek-aanpak curl naar Go of curl naar C.
Hoe handel ik authenticatie af in Rust?
Voor Bearer: client.get(url).bearer_auth(token). Voor Basic: client.get(url).basic_auth(user, Some(pass)). Of stel headers handmatig in met .header("Authorization", value). curl2code converteert -u en -H 'Authorization: ...' flags naar de juiste reqwest-methoden.
Hoe verstuur ik multipart form data in Rust?
Gebruik reqwest::multipart::Form: maak aan met Form::new(), voeg tekstvelden toe met .text("key", "value") en bestanden met .file("field", path).await?. Geef door aan client.post(url).multipart(form). curl2code verwerkt -F flags voor reqwest multipart.
Hoe ga ik om met HTTP-fouten in Rust?
reqwest retourneert een Result die Response bevat bij succes of reqwest::Error bij een fout — gebruik de ? operator voor propagatie. Controleer response.status().is_success() of roep response.error_for_status()? aan, die niet-2xx codes omzet naar fouten. Het typesysteem van Rust zorgt ervoor dat alle foutpaden expliciet worden afgehandeld tijdens het compileren.
Welke async runtime heeft reqwest nodig?
reqwest vereist standaard de tokio runtime. Annoteer uw main met #[tokio::main]. Schakel voor blocking gebruik zonder async runtime de blocking feature in en gebruik reqwest::blocking::Client. curl2code genereert standaard async code met tokio. Zie voor een ander async-ecosysteem curl naar Go (goroutines).
Hoe stel ik timeouts in Rust reqwest in?
Stel in op de client: Client::builder().timeout(Duration::from_secs(30)).connect_timeout(Duration::from_secs(10)).build()?. Per request: client.get(url).timeout(Duration::from_secs(5)). Deze mappen naar de curl-flags --max-time en --connect-timeout.
Hoe gebruik ik een proxy met reqwest?
Stel een proxy in op de client builder: Client::builder().proxy(Proxy::https("http://proxy:8080")?).build()?. Ondersteunt HTTP, HTTPS en SOCKS5 proxy's. reqwest respecteert standaard ook de omgevingsvariabelen HTTP_PROXY en HTTPS_PROXY. curl2code converteert -x flags naar proxyconfiguratie.
Hoe verstuur je een POST-verzoek met een JSON body in Rust?
Converteer een curl POST-commando zoals curl -X POST -H "Content-Type: application/json" -d "{"key":"value"}" URL naar Rust met curl2code. De gegenereerde code gebruikt client.post(url).json(&data).send().await?. curl2code detecteert automatisch -d/--data flags met JSON-inhoud en stelt de juiste Content-Type header in de reqwest code in.
Hoe voeg je Bearer token autorisatie toe in Rust?
Geef curl -H "Authorization: Bearer YOUR_TOKEN" URL door aan curl2code en het genereert reqwest code met de auth header: .bearer_auth("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 Rust?
curl2code converteert curl -H "Content-Type: application/json" URL naar reqwest code met de juiste header: .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 reqwest API.