Prevod curl do C#

Preveďte curl príkazy na C# kód pomocou HttpClient. curl2code beží úplne vo vašom prehliadači cez WebAssembly — vaše údaje zostávajú v súkromí. Pre vývoj v Jave vyskúšajte náš prevodník curl do Javy. Pre TypeScript si pozrite curl do TypeScriptu. Nižšie sú C# príklady pripravené na použitie.

Ako skopírovať curl z vášho prehliadača

  1. 1

    Otvorte DevTools

    Stlačte F12 alebo Ctrl+Shift+I na otvorenie vývojárskych nástrojov prehliadača.

  2. 2

    Prejdite na kartu Network

    Kliknite na kartu Network a vykonajte akciu, ktorá spustí HTTP požiadavku.

  3. 3

    Skopírovať ako cURL

    Kliknite pravým tlačidlom na požiadavku → CopyCopy as cURL. Potom ju prilepte vyššie.

Často kladené otázky

Čo je C# HttpClient?

HttpClient je moderný, vstavaný HTTP klient v .NET. Natívne podporuje async/await, HTTP/2, automatickú dekompresiu a zdieľanie pripojení. Používajte jednu inštanciu HttpClient (alebo IHttpClientFactory) v celej aplikácii, aby ste predišli vyčerpaniu socketov. Je to predvolená a jediná knižnica, ktorú curl2code používa pre konverzie do C#.

HttpClient vs WebClient vs HttpWebRequest — čo použiť?

HttpClient je moderný štandard — vždy ho používajte pre nové .NET projekty. WebClient a HttpWebRequest sú zastarané a nemali by sa v novom kóde používať. HttpClient poskytuje asynchrónnu podporu, lepší výkon a čistejšie API. Pre podobných moderných klientov si pozrite curl to Java alebo curl to Go.

Ako riešiť autentifikáciu v C#?

Nastavte hlavičku: client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", token). Pre Basic autentifikáciu zakódujte prihlasovacie údaje a nastavte hlavičku. Autentifikácia na požiadavku používa request.Headers.Authorization. curl2code deteguje -u a -H 'Authorization' a vygeneruje správny C# kód.

Ako posielať multipart form data v C#?

Použite MultipartFormDataContent: pridajte StringContent pre polia a StreamContent s ContentDisposition pre súbory. Odovzdajte multipart obsah do PostAsync(url, content). Boundary pre Content-Type sa nastaví automaticky. curl2code konvertuje prepínače -F na tento vzor.

Ako riešiť HTTP chyby v C#?

Zavolajte response.EnsureSuccessStatusCode() na vyvolanie HttpRequestException pri inom ako 2xx stave. Alebo manuálne skontrolujte response.IsSuccessStatusCode a response.StatusCode. Zabaľte do try/catch pre HttpRequestException, TaskCanceledException (timeout) a OperationCanceledException.

Ako používať async/await s HttpClient?

HttpClient je asynchrónny od návrhu — všetky metódy vracajú Task: var response = await client.GetAsync(url). Pre telo použite await response.Content.ReadAsStringAsync(). Pre paralelné požiadavky použite Task.WhenAll(). Nikdy nepoužívajte .Result alebo .Wait() — môžu spôsobiť deadlocky. Pre podobné asynchrónne vzory si pozrite curl to TypeScript.

Ako nastaviť timeouty v C# HttpClient?

Nastavte client.Timeout = TimeSpan.FromSeconds(30) pre celkový timeout. Pre kontrolu na úrovni požiadavky použite CancellationTokenSource s timeoutom: new CancellationTokenSource(TimeSpan.FromSeconds(10)). Pre opakovania použite knižnicu Polly alebo IHttpClientFactory s politikami opakovaní.

Ako nakonfigurovať proxy v C#?

Vytvorte HttpClientHandler s proxy: handler.Proxy = new WebProxy("http://proxy:8080"). Odovzdajte handler do new HttpClient(handler). Ak chcete obísť proxy pre lokálne adresy, nastavte handler.Proxy.BypassProxyOnLocal = true. curl2code konvertuje prepínače -x a --proxy na toto nastavenie.

Ako poslať POST požiadavku s JSON telom v jazyku C#?

Preveďte curl POST príkaz ako curl -X POST -H "Content-Type: application/json" -d '{"key":"value"}' URL do jazyka C# pomocou curl2code. Vygenerovaný kód používa new StringContent(json, Encoding.UTF8, 'application/json'). curl2code automaticky deteguje prepínače -d/--data s JSON obsahom a nastaví príslušnú hlavičku Content-Type v kóde pre HttpClient.

Ako pridať autorizáciu pomocou Bearer tokenu v jazyku C#?

Vložte curl -H "Authorization: Bearer YOUR_TOKEN" URL do curl2code a nástroj vygeneruje kód pre HttpClient s autorizačnou hlavičkou: client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue('Bearer', token). curl2code deteguje Bearer tokeny z prepínačov -H "Authorization: Bearer ..." aj --oauth2-bearer. Pre Basic auth použite -u user:pass.

Ako nastaviť hlavičku Content-Type v jazyku C#?

curl2code konvertuje curl -H "Content-Type: application/json" URL na kód pre HttpClient so správnou hlavičkou: new StringContent(json, Encoding.UTF8, 'application/json'). Pre dáta v -d curl predvolene používa application/x-www-form-urlencoded; pre nahrávanie formulárov cez -F používa multipart/form-data. curl2code mapuje každý z nich na správne API pre HttpClient.

Užitočné odkazy

Príručky pre curl

Prevod curl do iných jazykov