Převést curl do Perl

Převeďte curl příkazy na kód v Perlu pomocí LWP::UserAgent. curl2code běží zcela ve vašem prohlížeči přes WebAssembly — vaše data zůstávají v soukromí. Pro Python zkuste náš převodník curl do Pythonu. Pro Ruby viz curl do Ruby. Níže jsou příklady v Perlu připravené k použití.

Jak zkopírovat curl z prohlížeče

  1. 1

    Otevřete DevTools

    Stiskněte F12 nebo Ctrl+Shift+I pro otevření vývojářských nástrojů prohlížeče.

  2. 2

    Přejděte na kartu Network

    Klikněte na kartu Network a proveďte akci, která vyvolá HTTP požadavek.

  3. 3

    Zkopírovat jako cURL

    Klikněte pravým tlačítkem na požadavek → CopyCopy as cURL. Poté jej vložte výše.

Často kladené dotazy

Co je Perl LWP?

LWP (Library for WWW in Perl) je standardní knihovna HTTP klienta pro Perl. Modul LWP::UserAgent poskytuje plnohodnotného klienta se správou cookies, přesměrováními, podporou proxy a SSL. Nainstalujte pomocí cpan LWP nebo apt install libwww-perl. curl2code používá LWP jako výchozí pro převody do Perlu.

LWP vs HTTP::Tiny vs Mojo::UserAgent — co použít?

LWP je bohatý na funkce a je to tradiční volba. HTTP::Tiny je jádrový modul (není nutná instalace) — skvělý pro jednoduché požadavky. Mojo::UserAgent je moderní s podporou async a WebSocket. Pro rychlé skripty použijte HTTP::Tiny. Pro plnou funkčnost použijte LWP. Pro podobné skriptovací jazyky viz curl do Pythonu nebo curl do Ruby.

Jak řešit autentizaci v Perlu?

S LWP: $ua->default_header('Authorization' => 'Bearer token'). Pro Basic auth: $ua->credentials('host:port', 'realm', 'user', 'pass'). Nebo nastavte hlavičky pro každý požadavek na objektu HTTP::Request. curl2code převádí přepínače -u a -H 'Authorization' do syntaxe Perlu.

Jak poslat multipart form data v Perlu?

Použijte HTTP::Request::Common: POST($url, Content_Type => 'form-data', Content => [file => ['path/file.pdf']]). LWP automaticky řeší multipart boundaries. Pro další pole přidejte páry klíč-hodnota do pole Content. curl2code převádí přepínače -F do tohoto formátu.

Jak řešit chyby HTTP v Perlu?

Po každém požadavku zkontrolujte $response->is_success. Pro podrobnosti o chybě: $response->status_line vrací stavový kód a zprávu. LWP vrací objekt odpovědi i při chybách — zkontrolujte $response->code pro HTTP stav. Pro hlášení chyb použijte die nebo warn.

Jak parsovat JSON v Perlu?

Použijte modul JSON: my $data = decode_json($response->content). Pro kódování: my $json = encode_json($hashref). Nainstalujte pomocí cpan JSON. Pro Perl 5.14+ zvažte JSON::PP (jádrový modul, bez instalace). Pro více nástrojů zaměřených na JSON viz curl do Go.

Jak nastavit timeouty v Perl LWP?

Nastavte na UserAgentovi: my $ua = LWP::UserAgent->new(timeout => 30). Tím se nastaví celkový timeout požadavku v sekundách. Konkrétně pro timeout připojení použijte volby IO::Socket::SSL. Opakování (retries) nejsou v LWP vestavěna — implementujte je ručně nebo použijte LWP::UserAgent::Determined.

Jak používat proxy v Perlu?

Nastavte na UserAgentovi: $ua->proxy(['http', 'https'], 'http://proxy:8080'). Nebo použijte proměnné prostředí: $ua->env_proxy načte HTTP_PROXY a HTTPS_PROXY. Pro výjimky bez proxy: $ua->no_proxy('localhost', '.internal'). curl2code převádí přepínače -x na volání proxy v LWP.

Jak odeslat POST požadavek s JSON tělem v Perlu?

Převeďte curl POST příkaz jako curl -X POST -H "Content-Type: application/json" -d '{"key":"value"}' URL do Perlu pomocí curl2code. Vygenerovaný kód používá $ua->post($url, Content_Type => 'application/json', Content => encode_json($data)). 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 LWP::UserAgent.

Jak přidat autorizaci pomocí Bearer tokenu v Perlu?

Vložte curl -H "Authorization: Bearer YOUR_TOKEN" URL do curl2code a nástroj vygeneruje kód pro LWP::UserAgent s autorizační hlavičkou: $req->header('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 Perlu?

curl2code převede curl -H "Content-Type: application/json" URL na kód pro LWP::UserAgent se správnou hlavičkou: $req->header('Content-Type' => 'application/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é LWP::UserAgent API.

Užitečné odkazy

Průvodci curl

Převést curl do jiných jazyků