Prevod curl do Rust
curl2code konvertuje curl príkazy na Rust kód pomocou crate reqwest. Prevod prebieha vo vašom prehliadači cez WebAssembly pre úplné súkromie. Pre Go si pozrite náš prevodník curl do Go. Pre C si pozrite curl do C. Nižšie sú praktické Rust príklady s async/await.
Ako skopírovať curl z vášho prehliadača
- 1
Otvorte DevTools
Stlačte F12 alebo Ctrl+Shift+I na otvorenie vývojárskych nástrojov prehliadača.
- 2
Prejdite na kartu Network
Kliknite na kartu Network a vykonajte akciu, ktorá spustí HTTP požiadavku.
- 3
Skopírovať ako cURL
Kliknite pravým tlačidlom na požiadavku → Copy → Copy as cURL. Potom ju prilepte vyššie.
Často kladené otázky
Čo je Rust reqwest?
reqwest je najpopulárnejší HTTP klient pre Rust, postavený na knižnici hyper. Poskytuje blokujúce aj asynchrónne API, automatickú serializáciu JSON cez serde, TLS, správu cookies a podporu proxy. Pridajte pomocou cargo add reqwest --features json. Je to predvolená knižnica, ktorú curl2code používa pre konverzie do Rustu.
reqwest vs hyper vs ureq — čo by som mal použiť?
reqwest je voľbou pre väčšinu projektov — je na vysokej úrovni, bohatý na funkcie a asynchrónny. hyper je nízkoúrovňovejší a poskytuje maximálnu kontrolu (reqwest je na ňom postavený). ureq je minimálny, čisto blokujúci klient bez závislosti na asynchrónnom runtime. Pre podobný prístup so štandardnou knižnicou si pozrite curl to Go alebo curl to C.
Ako riešiť autentifikáciu v Ruste?
Pre Bearer: client.get(url).bearer_auth(token). Pre Basic: client.get(url).basic_auth(user, Some(pass)). Alebo nastavte hlavičky manuálne pomocou .header("Authorization", value). curl2code konvertuje prepínače -u a -H 'Authorization: ...' na príslušné metódy reqwest.
Ako posielať multipart form data v Ruste?
Použite reqwest::multipart::Form: vytvorte pomocou Form::new(), pridajte textové polia pomocou .text("key", "value") a súbory pomocou .file("field", path).await?. Odovzdajte do client.post(url).multipart(form). curl2code spracováva prepínače -F pre reqwest multipart.
Ako riešiť HTTP chyby v Ruste?
reqwest vracia Result, ktorý obaluje Response pri úspechu alebo reqwest::Error pri zlyhaní — použite operátor ? na propagáciu. Skontrolujte response.status().is_success() alebo zavolajte response.error_for_status()?, čo konvertuje kódy iné ako 2xx na chyby. Typový systém Rustu zabezpečuje, že všetky cesty chýb sú explicitne spracované v čase kompilácie.
Ktorý asynchrónny runtime potrebuje reqwest?
reqwest predvolene vyžaduje runtime tokio. Označte svoju funkciu main pomocou #[tokio::main]. Pre blokujúce použitie bez asynchrónneho runtime povoľte funkciu blocking a použite reqwest::blocking::Client. curl2code predvolene generuje asynchrónny kód s tokio. Pre iný asynchrónny ekosystém si pozrite curl to Go (gorutiny).
Ako nastaviť timeouty v Rust reqwest?
Nastavte na klientovi: Client::builder().timeout(Duration::from_secs(30)).connect_timeout(Duration::from_secs(10)).build()?. Na požiadavku: client.get(url).timeout(Duration::from_secs(5)). Tieto sa mapujú na curl prepínače --max-time a --connect-timeout.
Ako používať proxy s reqwest?
Nastavte proxy v builderi klienta: Client::builder().proxy(Proxy::https("http://proxy:8080")?).build()?. Podporuje HTTP, HTTPS a SOCKS5 proxy. reqwest tiež predvolene rešpektuje premenné prostredia HTTP_PROXY a HTTPS_PROXY. curl2code konvertuje prepínače -x na konfiguráciu proxy.
Ako poslať POST požiadavku s JSON telom v jazyku Rust?
Preveďte curl POST príkaz ako curl -X POST -H "Content-Type: application/json" -d "{"key":"value"}" URL do jazyka Rust pomocou curl2code. Vygenerovaný kód používa client.post(url).json(&data).send().await?. curl2code automaticky deteguje prepínače -d/--data s JSON obsahom a nastaví príslušnú hlavičku Content-Type v kóde pre reqwest.
Ako pridať autorizáciu pomocou Bearer tokenu v jazyku Rust?
Vložte curl -H "Authorization: Bearer YOUR_TOKEN" URL do curl2code a nástroj vygeneruje kód pre reqwest s autorizačnou hlavičkou: .bearer_auth("YOUR_TOKEN"). curl2code deteguje Bearer tokeny z prepínačov -H "Authorization: Bearer ..." aj --oauth2-bearer. Pre Basic auth použite -u user:pass.
Ako nastaviť hlavičku Content-Type v jazyku Rust?
curl2code konvertuje curl -H "Content-Type: application/json" URL na kód pre reqwest so správnou hlavičkou: .header("Content-Type", "application/json"). Pre dáta v -d curl predvolene používa application/x-www-form-urlencoded; pre nahrávanie formulárov cez -F používa multipart/form-data. curl2code mapuje každý z nich na správne API pre reqwest.