Converti curl in Dart
Converti i comandi curl in codice Dart utilizzando il pacchetto http. curl2code viene eseguito interamente nel tuo browser tramite WebAssembly — i tuoi dati rimangono privati. Per Kotlin, prova il nostro convertitore da curl a Kotlin. Per Swift, vedi da curl a Swift. Di seguito sono riportati esempi Dart pronti all'uso per Flutter.
Come copiare curl dal tuo browser
- 1
Apri DevTools
Premi F12 o Ctrl+Shift+I per aprire gli strumenti per sviluppatori del browser.
- 2
Vai alla scheda Network
Fai clic sulla scheda Network ed esegui l'azione che attiva la richiesta HTTP.
- 3
Copia come cURL
Fai clic con il tasto destro sulla richiesta → Copia → Copia come cURL. Quindi incollalo sopra.
Domande Frequenti
Cos'è il pacchetto http di Dart?
Il pacchetto http è il client HTTP consigliato per Dart e Flutter. Fornisce un'API semplice basata su Future per GET, POST, caricamenti multipart e streaming. Installa con dart pub add http. Funziona su tutte le piattaforme Dart: mobile, web e server. curl2code lo usa come predefinito per le conversioni Dart.
http vs dio vs HttpClient — quale dovrei usare?
http è semplice e leggero — ottimo per richieste di base. dio aggiunge intercettatori, FormData, progresso del download e cancellazione. HttpClient (dart:io) è di livello più basso e integrato, ma più verboso. Per le app Flutter che necessitano di intercettatori, scegli dio. Per client mobile simili, vedi curl a Kotlin o curl a Swift.
Come gestire l'autenticazione in Dart?
Passa gli header alla richiesta: http.get(url, headers: { "Authorization": "Bearer $token" }). Per l'autenticazione Basic, codifica con base64Encode(utf8.encode("$user:$pass")). curl2code converte i flag -u e -H 'Authorization' in codice Dart con header tipizzati correttamente.
Come inviare dati form multipart in Dart?
Usa http.MultipartRequest: crea la richiesta, aggiungi i campi con request.fields['key'] = 'value' e i file con request.files.add(await http.MultipartFile.fromPath('file', path)). Quindi invia con request.send(). curl2code converte i flag -F in questo pattern.
Come gestire gli errori HTTP in Dart?
Il pacchetto http non lancia eccezioni sugli errori HTTP — controlla manualmente response.statusCode. Avvolgi le chiamate in try/catch per SocketException (errori di rete) e TimeoutException. Usa http.Client con close() per una corretta pulizia delle risorse nelle applicazioni a lunga durata.
Come usare async/await con Dart HTTP?
Tutti i metodi HTTP di Dart restituiscono un Future — usa final response = await http.get(Uri.parse(url)). L'async/await di Dart è integrato nel linguaggio. Per richieste parallele, usa Future.wait([request1, request2]). Per pattern asincroni simili, vedi curl a TypeScript o curl a Swift.
Come impostare i timeout in Dart?
Usa il metodo .timeout() su qualsiasi Future: http.get(url).timeout(Duration(seconds: 30)). Questo lancia TimeoutException quando superato. Per un maggiore controllo, crea un http.Client e configuralo tramite l'HttpClient sottostante di dart:io con connectionTimeout.
Come usare un proxy in Dart?
Usa HttpClient da dart:io: HttpClient()..findProxy = (uri) => 'PROXY proxy:8080'. Per il pacchetto http, crea un IOClient personalizzato che avvolge l'HttpClient configurato. Dart rispetta anche le variabili d'ambiente HTTP_PROXY e NO_PROXY.
Come inviare una richiesta POST con un corpo JSON in Dart?
Converti un comando curl POST come curl -X POST -H "Content-Type: application/json" -d '{"key":"value"}' URL in Dart usando curl2code. Il codice generato utilizza http.post(uri, body: jsonEncode(data), headers: {'Content-Type': 'application/json'}). curl2code rileva automaticamente i flag -d/--data con contenuto JSON e imposta l'intestazione Content-Type appropriata nel codice http.
Come aggiungere l''autorizzazione con Bearer token in Dart?
Passa curl -H "Authorization: Bearer YOUR_TOKEN" URL a curl2code e genererà il codice http con l'intestazione di autenticazione: headers: {'Authorization': 'Bearer YOUR_TOKEN'}. curl2code rileva i Bearer token sia dai flag -H "Authorization: Bearer ..." che --oauth2-bearer. Per la Basic auth, usa -u user:pass.
Come impostare l''intestazione Content-Type in Dart?
curl2code converte curl -H "Content-Type: application/json" URL in codice http con l'intestazione corretta: headers: {'Content-Type': 'application/json'}. Per i dati -d, curl utilizza come predefinito application/x-www-form-urlencoded; per i caricamenti di moduli -F, utilizza multipart/form-data. curl2code mappa ciascuno alla corretta API di http.