Converti curl in C#
Converti i comandi curl in codice C# utilizzando HttpClient. curl2code viene eseguito interamente nel tuo browser tramite WebAssembly — i tuoi dati rimangono privati. Per lo sviluppo in Java, prova il nostro convertitore da curl a Java. Per TypeScript, vedi da curl a TypeScript. Di seguito sono riportati esempi C# pronti all'uso.
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'è HttpClient di C#?
HttpClient è il client HTTP moderno e integrato in .NET. Supporta nativamente async/await, HTTP/2, la decompressione automatica e il connection pooling. Usa una singola istanza di HttpClient (o IHttpClientFactory) in tutta l'applicazione per evitare l'esaurimento dei socket. È la libreria predefinita e unica utilizzata da curl2code per le conversioni C#.
HttpClient vs WebClient vs HttpWebRequest — quale usare?
HttpClient è lo standard moderno — usalo sempre per i nuovi progetti .NET. WebClient e HttpWebRequest sono legacy e non dovrebbero essere usati nel nuovo codice. HttpClient fornisce supporto asincrono, migliori prestazioni e un'API più pulita. Per client moderni simili, vedi da curl a Java o da curl a Go.
Come gestire l'autenticazione in C#?
Imposta l'header: client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", token). Per l'autenticazione Basic, codifica le credenziali e imposta l'header. L'autenticazione per singola richiesta usa request.Headers.Authorization. curl2code rileva -u e -H 'Authorization' e genera il codice C# corretto.
Come inviare dati form multipart in C#?
Usa MultipartFormDataContent: aggiungi StringContent per i campi e StreamContent con ContentDisposition per i file. Passa il contenuto multipart a PostAsync(url, content). Il boundary Content-Type viene impostato automaticamente. curl2code converte i flag -F in questo pattern.
Come gestire gli errori HTTP in C#?
Chiama response.EnsureSuccessStatusCode() per lanciare HttpRequestException su stati non 2xx. Oppure controlla manualmente response.IsSuccessStatusCode e response.StatusCode. Avvolgi in try/catch per HttpRequestException, TaskCanceledException (timeout) e OperationCanceledException.
Come usare async/await con HttpClient?
HttpClient è asincrono per progettazione — tutti i metodi restituiscono Task: var response = await client.GetAsync(url). Usa await response.Content.ReadAsStringAsync() per il body. Per richieste parallele, usa Task.WhenAll(). Non usare mai .Result o .Wait() — possono causare deadlock. Per pattern asincroni simili, vedi da curl a TypeScript.
Come impostare i timeout in HttpClient di C#?
Imposta client.Timeout = TimeSpan.FromSeconds(30) per il timeout globale. Per il controllo per singola richiesta, usa CancellationTokenSource con un timeout: new CancellationTokenSource(TimeSpan.FromSeconds(10)). Per i tentativi, usa la libreria Polly o IHttpClientFactory con policy di retry.
Come configurare un proxy in C#?
Crea un HttpClientHandler con proxy: handler.Proxy = new WebProxy("http://proxy:8080"). Passa l'handler a new HttpClient(handler). Per bypassare il proxy per gli indirizzi locali, imposta handler.Proxy.BypassProxyOnLocal = true. curl2code converte i flag -x e --proxy in questa configurazione.
Come inviare una richiesta POST con un corpo JSON in C#?
Converti un comando curl POST come curl -X POST -H "Content-Type: application/json" -d '{"key":"value"}' URL in C# usando curl2code. Il codice generato utilizza new StringContent(json, Encoding.UTF8, 'application/json'). curl2code rileva automaticamente i flag -d/--data con contenuto JSON e imposta l'intestazione Content-Type appropriata nel codice HttpClient.
Come aggiungere l''autorizzazione con Bearer token in C#?
Passa curl -H "Authorization: Bearer YOUR_TOKEN" URL a curl2code e genererà il codice HttpClient con l'intestazione di autenticazione: client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue('Bearer', 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 C#?
curl2code converte curl -H "Content-Type: application/json" URL in codice HttpClient con l'intestazione corretta: new StringContent(json, Encoding.UTF8, '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 HttpClient.