Konwertuj curl na C#

Konwertuj polecenia curl na kod C# przy użyciu HttpClient. curl2code działa w całości w przeglądarce poprzez WebAssembly — Twoje dane pozostają prywatne. Do programowania w Java wypróbuj nasz konwerter curl na Java. W przypadku TypeScript, zobacz curl na TypeScript. Poniżej znajdują się gotowe do użycia przykłady w C#.

Jak skopiować polecenie curl z przeglądarki

  1. 1

    Otwórz DevTools

    Naciśnij F12 lub Ctrl+Shift+I, aby otworzyć narzędzia programistyczne przeglądarki.

  2. 2

    Przejdź do karty Sieć

    Kliknij kartę Sieć i wykonaj akcję, która wywołuje żądanie HTTP.

  3. 3

    Kopiuj jako cURL

    Kliknij żądanie prawym przyciskiem myszy → KopiujKopiuj jako cURL. Następnie wklej je powyżej.

Najczęściej zadawane pytania

Czym jest C# HttpClient?

HttpClient to nowoczesny, wbudowany klient HTTP w .NET. Natywnie obsługuje async/await, HTTP/2, automatyczną dekompresję i pulowanie połączeń. Używaj pojedynczej instancji HttpClient (lub IHttpClientFactory) w całej aplikacji, aby uniknąć wyczerpania gniazd. Jest to domyślna i jedyna biblioteka, której curl2code używa do konwersji na C#.

HttpClient vs WebClient vs HttpWebRequest — którego użyć?

HttpClient to nowoczesny standard — zawsze używaj go w nowych projektach .NET. WebClient i HttpWebRequest są przestarzałe i nie powinny być używane w nowym kodzie. HttpClient zapewnia obsługę asynchroniczną, lepszą wydajność i czystsze API. Dla podobnych nowoczesnych klientów zobacz curl na Java lub curl na Go.

Jak obsługiwać uwierzytelnianie w C#?

Ustaw nagłówek: client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", token). Dla Basic auth zakoduj poświadczenia i ustaw nagłówek. Uwierzytelnianie na poziomie żądania używa request.Headers.Authorization. curl2code wykrywa -u i -H 'Authorization' i generuje poprawny kod C#.

Jak wysyłać dane formularza multipart w C#?

Użyj MultipartFormDataContent: dodaj StringContent dla pól i StreamContent z ContentDisposition dla plików. Przekaż zawartość multipart do PostAsync(url, content). Granica Content-Type jest ustawiana automatycznie. curl2code konwertuje flagi -F na ten wzorzec.

Jak obsługiwać błędy HTTP w C#?

Wywołaj response.EnsureSuccessStatusCode(), aby rzucić HttpRequestException przy statusie innym niż 2xx. Możesz też ręcznie sprawdzić response.IsSuccessStatusCode i response.StatusCode. Otaczaj kod blokiem try/catch dla HttpRequestException, TaskCanceledException (timeout) oraz OperationCanceledException.

Jak używać async/await z HttpClient?

HttpClient jest asynchroniczny z założenia — wszystkie metody zwracają Task: var response = await client.GetAsync(url). Użyj await response.Content.ReadAsStringAsync() dla body. Dla żądań równoległych użyj Task.WhenAll(). Nigdy nie używaj .Result ani .Wait() — mogą one powodować zakleszczenia. Podobne wzorce asynchroniczne znajdziesz w curl na TypeScript.

Jak ustawić limity czasu w C# HttpClient?

Ustaw client.Timeout = TimeSpan.FromSeconds(30) dla ogólnego limitu czasu. Dla kontroli na poziomie żądania użyj CancellationTokenSource z limitem czasu: new CancellationTokenSource(TimeSpan.FromSeconds(10)). Dla ponownych prób użyj biblioteki Polly lub IHttpClientFactory z politykami ponowień.

Jak skonfigurować proxy w C#?

Utwórz HttpClientHandler z proxy: handler.Proxy = new WebProxy("http://proxy:8080"). Przekaż handler do new HttpClient(handler). Aby pominąć proxy dla adresów lokalnych, ustaw handler.Proxy.BypassProxyOnLocal = true. curl2code konwertuje flagi -x i --proxy na tę konfigurację.

Jak wysłać żądanie POST z ciałem JSON w języku C#?

Konwertuj polecenie curl POST, takie jak curl -X POST -H "Content-Type: application/json" -d '{"key":"value"}' URL na kod C# za pomocą curl2code. Wygenerowany kod używa new StringContent(json, Encoding.UTF8, 'application/json'). curl2code automatycznie wykrywa flagi -d/--data z zawartością JSON i ustawia odpowiedni nagłówek Content-Type w kodzie HttpClient.

Jak dodać autoryzację Bearer token w języku C#?

Przekaż curl -H "Authorization: Bearer YOUR_TOKEN" URL do curl2code, a narzędzie wygeneruje kod HttpClient z nagłówkiem autoryzacji: client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue('Bearer', token). curl2code wykrywa tokeny Bearer zarówno z flag -H "Authorization: Bearer ...", jak i --oauth2-bearer. W przypadku Basic auth użyj -u user:pass.

Jak ustawić nagłówek Content-Type w języku C#?

curl2code konwertuje curl -H "Content-Type: application/json" URL na kod HttpClient z właściwym nagłówkiem: new StringContent(json, Encoding.UTF8, 'application/json'). Dla danych -d curl domyślnie ustawia application/x-www-form-urlencoded; dla przesyłania formularzy -F używa multipart/form-data. curl2code mapuje każde z nich na odpowiednie API HttpClient.

Przydatne linki

Poradniki curl

Konwertuj curl na inne języki