Převést curl do R
curl2code převádí curl příkazy na kód v R pomocí balíčku httr. Převod probíhá ve vašem prohlížeči přes WebAssembly pro úplné soukromí. Pro Python se podívejte na náš převodník curl do Pythonu. Pro Julii viz curl do Julie. Níže jsou praktické příklady v R.
Jak zkopírovat curl z prohlížeče
- 1
Otevřete DevTools
Stiskněte F12 nebo Ctrl+Shift+I pro otevření vývojářských nástrojů prohlížeče.
- 2
Přejděte na kartu Network
Klikněte na kartu Network a proveďte akci, která vyvolá HTTP požadavek.
- 3
Zkopírovat jako cURL
Klikněte pravým tlačítkem na požadavek → Copy → Copy as cURL. Poté jej vložte výše.
Často kladené dotazy
Co je R httr?
httr je nejoblíbenější balíček HTTP klienta pro R, navržený pro interakci s webovými API. Poskytuje funkce jako GET(), POST(), PUT() s automatickým zpracováním typů obsahu a podporou OAuth. Instaluje se pomocí install.packages("httr"). curl2code podporuje také httr2, což je nástupce nové generace.
httr vs httr2 vs balíček curl — co použít?
httr je stabilní a široce používaný — většina tutoriálů pro R jej využívá. httr2 je moderní náhrada se syntaxí využívající roury (pipes), vestavěným opakováním a omezováním četnosti (rate limiting). Balíček curl je nízkoúrovňový obal nad libcurl. Pro nové projekty použijte httr2, pro kompatibilitu httr. Pro podobné postupy v datové vědě viz curl do Python nebo curl do Julia.
Jak řešit autentizaci v R?
Pro Bearer: GET(url, add_headers(Authorization = paste("Bearer", token))). Pro Basic auth: GET(url, authenticate(user, pass)). httr také podporuje OAuth 1.0 a 2.0 přes oauth1.0_token() a oauth2.0_token(). curl2code převádí -u a příznaky hlaviček do syntaxe R.
Jak poslat multipart form data v R?
Použijte POST(url, body = list(file = upload_file("doc.pdf"), desc = "My file"), encode = "multipart"). httr automaticky řeší oddělovače multipart a Content-Type. Pro těla v JSON použijte encode = "json". curl2code převádí příznaky -F na syntaxi multipart v httr.
Jak řešit HTTP chyby v R?
Použijte stop_for_status(response) pro vyhození chyby u kódů mimo 2xx, warn_for_status() pro varování nebo message_for_status() pro zprávy. Stav zjistíte pomocí status_code(response). Pro programové ošetření chyb obalte do tryCatch(). httr2 používá req_error() pro konfigurovatelné chování při chybách.
Jak parsovat JSON odpovědi v R?
Použijte content(response, "parsed") pro automatické parsování JSON na seznam, nebo content(response, "text") s jsonlite::fromJSON() pro větší kontrolu. jsonlite převádí JSON na datové rámce (data frames), seznamy a vektory v R. V datových rourách můžete výsledek poslat přímo do tibble nebo dplyr.
Jak nastavit timeouty v R?
Použijte GET(url, timeout(30)) pro 30sekundový timeout. httr2 používá req_timeout(req, 30). Pro opakování v httr2: req_retry(req, max_tries = 3, backoff = ~ 2). httr nemá vestavěné opakování — použijte smyčku s tryCatch(). Tyto volby odpovídají curl parametru --max-time.
Jak používat proxy v R?
Použijte GET(url, use_proxy("proxy", 8080, username, password)). httr obaluje volby proxy z libcurl. Respektuje také proměnné prostředí http_proxy a https_proxy. Pro SOCKS proxy specifikujte schéma: use_proxy("socks5://proxy:1080"). curl2code převádí příznaky -x do konfigurace proxy v R.
Jak odeslat POST požadavek s JSON tělem v R?
Převeďte curl POST příkaz jako curl -X POST -H "Content-Type: application/json" -d '{"key":"value"}' URL do R pomocí curl2code. Vygenerovaný kód používá POST(url, body = data, encode = 'json'). curl2code automaticky detekuje -d/--data přepínače s JSON obsahem a nastaví odpovídající Content-Type hlavičku v kódu pro httr.
Jak přidat autorizaci pomocí Bearer tokenu v R?
Vložte curl -H "Authorization: Bearer YOUR_TOKEN" URL do curl2code a nástroj vygeneruje kód pro httr s autorizační hlavičkou: add_headers(Authorization = 'Bearer YOUR_TOKEN'). curl2code detekuje Bearer tokeny z přepínačů -H "Authorization: Bearer ..." i --oauth2-bearer. Pro Basic auth použijte -u user:pass.
Jak nastavit hlavičku Content-Type v R?
curl2code převede curl -H "Content-Type: application/json" URL na kód pro httr se správnou hlavičkou: content_type_json(). Pro data u -d curl standardně používá application/x-www-form-urlencoded; pro nahrávání formulářů přes -F používá multipart/form-data. curl2code mapuje každý z nich na správné httr API.