Převést curl do Dart

Převeďte curl příkazy na kód v Dartu pomocí balíčku http. curl2code běží zcela ve vašem prohlížeči přes WebAssembly — vaše data zůstávají v soukromí. Pro Kotlin zkuste náš převodník curl do Kotlinu. Pro Swift viz curl do Swiftu. Níže jsou příklady v Dartu připravené k použití pro Flutter.

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 balíček Dart http?

Balíček http je doporučený HTTP klient pro Dart a Flutter. Poskytuje jednoduché API založené na Future pro GET, POST, multipart nahrávání a streamování. Nainstalujte pomocí dart pub add http. Funguje na všech platformách Dart — mobilních, webových i serverových. curl2code jej používá jako výchozí pro převody do Dartu.

http vs dio vs HttpClient — co mám použít?

http je jednoduchý a lehký — skvělý pro základní požadavky. dio přidává interceptory, FormData, sledování průběhu stahování a rušení požadavků. HttpClient (dart:io) je nízkoúrovňový a vestavěný, ale upovídanější. Pro aplikace ve Flutteru vyžadující interceptory zvolte dio. Pro podobné mobilní klienty viz curl do Kotlinu nebo curl do Swiftu.

Jak řešit autentizaci v Dartu?

Předejte hlavičky požadavku: http.get(url, headers: { "Authorization": "Bearer $token" }). Pro Basic auth použijte kódování base64Encode(utf8.encode("$user:$pass")). curl2code převádí přepínače -u a -H 'Authorization' do kódu Dart se správně typovanými hlavičkami.

Jak poslat multipart form data v Dartu?

Použijte http.MultipartRequest: vytvořte požadavek, přidejte pole pomocí request.fields['key'] = 'value' a soubory pomocí request.files.add(await http.MultipartFile.fromPath('file', path)). Poté odešlete pomocí request.send(). curl2code převádí přepínače -F na tento vzor.

Jak řešit chyby HTTP v Dartu?

Balíček http nevyhazuje výjimky při chybách HTTP — zkontrolujte response.statusCode ručně. Zabalte volání do try/catch pro SocketException (chyby sítě) a TimeoutException. Používejte http.Client s close() pro správné uvolnění prostředků v dlouhotrvajících aplikacích.

Jak používat async/await s Dart HTTP?

Všechny metody Dart HTTP vrací Future — použijte final response = await http.get(Uri.parse(url)). Async/await je v Dartu vestavěno přímo do jazyka. Pro paralelní požadavky použijte Future.wait([request1, request2]). Pro podobné asynchronní vzory viz curl do TypeScriptu nebo curl do Swiftu.

Jak nastavit timeouty v Dartu?

Použijte metodu .timeout() na jakémkoli Future: http.get(url).timeout(Duration(seconds: 30)). Při překročení vyhodí TimeoutException. Pro větší kontrolu vytvořte http.Client a konfigurujte jej přes podkladový HttpClient z dart:io pomocí connectionTimeout.

Jak používat proxy v Dartu?

Použijte HttpClient z dart:io: HttpClient()..findProxy = (uri) => 'PROXY proxy:8080'. Pro balíček http vytvořte vlastní IOClient obalující nakonfigurovaný HttpClient. Dart také respektuje proměnné prostředí HTTP_PROXY a NO_PROXY.

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

Převeďte curl POST příkaz jako curl -X POST -H "Content-Type: application/json" -d '{"key":"value"}' URL do Dartu pomocí curl2code. Vygenerovaný kód používá http.post(uri, body: jsonEncode(data), headers: {'Content-Type': 'application/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 http.

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

Vložte curl -H "Authorization: Bearer YOUR_TOKEN" URL do curl2code a nástroj vygeneruje kód pro http s autorizační hlavičkou: 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 Dartu?

curl2code převede curl -H "Content-Type: application/json" URL na kód pro http se správnou hlavičkou: headers: {'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é http API.

Užitečné odkazy

Průvodci curl

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