Konversi curl ke C#
Konversi perintah curl ke kode C# menggunakan HttpClient. curl2code berjalan sepenuhnya di peramban Anda melalui WebAssembly — data Anda tetap pribadi. Untuk pengembangan Java, coba konverter curl ke Java kami. Untuk TypeScript, lihat curl ke TypeScript. Di bawah ini adalah contoh C# yang siap digunakan.
Cara menyalin curl dari peramban Anda
- 1
Buka DevTools
Tekan F12 atau Ctrl+Shift+I untuk membuka alat pengembang peramban Anda.
- 2
Buka tab Network
Klik tab Network dan lakukan tindakan yang memicu permintaan HTTP.
- 3
Salin sebagai cURL
Klik kanan pada permintaan → Copy → Copy as cURL. Kemudian tempelkan di atas.
Pertanyaan yang Sering Diajukan
Apa itu C# HttpClient?
HttpClient adalah klien HTTP modern bawaan di .NET. Ia mendukung async/await secara asli, HTTP/2, dekompresi otomatis, dan pengumpulan koneksi. Gunakan satu instans HttpClient (atau IHttpClientFactory) di seluruh aplikasi Anda untuk menghindari kehabisan soket (socket exhaustion). Ini adalah pustaka default dan satu-satunya yang digunakan curl2code untuk konversi C#.
HttpClient vs WebClient vs HttpWebRequest — mana yang harus digunakan?
HttpClient adalah standar modern — selalu gunakan untuk proyek .NET baru. WebClient dan HttpWebRequest adalah warisan dan tidak boleh digunakan dalam kode baru. HttpClient menyediakan dukungan asinkron, performa lebih baik, dan API yang lebih bersih. Untuk klien modern serupa, lihat curl ke Java atau curl ke Go.
Bagaimana cara menangani autentikasi di C#?
Atur header: client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", token). Untuk autentikasi Basic, enkode kredensial dan atur header-nya. Autentikasi per permintaan menggunakan request.Headers.Authorization. curl2code mendeteksi -u dan -H 'Authorization' dan menghasilkan kode C# yang benar.
Bagaimana cara mengirim data formulir multipart di C#?
Gunakan MultipartFormDataContent: tambahkan StringContent untuk bidang dan StreamContent dengan ContentDisposition untuk file. Berikan konten multipart ke PostAsync(url, content). Batas (boundary) Content-Type diatur secara otomatis. curl2code mengonversi flag -F ke pola ini.
Bagaimana cara menangani kesalahan HTTP di C#?
Panggil response.EnsureSuccessStatusCode() untuk melemparkan HttpRequestException pada status non-2xx. Atau periksa response.IsSuccessStatusCode dan response.StatusCode secara manual. Bungkus dalam try/catch untuk HttpRequestException, TaskCanceledException (batas waktu), dan OperationCanceledException.
Bagaimana cara menggunakan async/await dengan HttpClient?
HttpClient dirancang asinkron secara bawaan — semua metode mengembalikan Task: var response = await client.GetAsync(url). Gunakan await response.Content.ReadAsStringAsync() untuk body. Untuk permintaan paralel, gunakan Task.WhenAll(). Jangan pernah gunakan .Result atau .Wait() — keduanya dapat menyebabkan deadlock. Untuk pola asinkron serupa, lihat curl ke TypeScript.
Bagaimana cara mengatur batas waktu di C# HttpClient?
Atur client.Timeout = TimeSpan.FromSeconds(30) untuk batas waktu keseluruhan. Untuk kontrol per permintaan, gunakan CancellationTokenSource dengan batas waktu: new CancellationTokenSource(TimeSpan.FromSeconds(10)). Untuk percobaan ulang, gunakan pustaka Polly atau IHttpClientFactory dengan kebijakan percobaan ulang.
Bagaimana cara mengonfigurasi proksi di C#?
Buat HttpClientHandler dengan proksi: handler.Proxy = new WebProxy("http://proxy:8080"). Berikan handler tersebut ke new HttpClient(handler). Untuk melewati proksi untuk alamat lokal, atur handler.Proxy.BypassProxyOnLocal = true. curl2code mengonversi flag -x dan --proxy ke pengaturan ini.
Bagaimana cara mengirim POST request dengan JSON body di C#?
Konversi perintah curl POST seperti curl -X POST -H "Content-Type: application/json" -d '{"key":"value"}' URL ke C# menggunakan curl2code. Kode yang dihasilkan menggunakan new StringContent(json, Encoding.UTF8, 'application/json'). curl2code secara otomatis mendeteksi flag -d/--data dengan konten JSON dan mengatur header Content-Type yang sesuai dalam kode HttpClient.
Bagaimana cara menambahkan otorisasi Bearer token di C#?
Masukkan curl -H "Authorization: Bearer YOUR_TOKEN" URL ke curl2code dan alat ini akan menghasilkan kode HttpClient dengan header auth: client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue('Bearer', token). curl2code mendeteksi Bearer token dari flag -H "Authorization: Bearer ..." maupun --oauth2-bearer. Untuk Basic auth, gunakan -u user:pass.
Bagaimana cara mengatur header Content-Type di C#?
curl2code mengonversi curl -H "Content-Type: application/json" URL ke kode HttpClient dengan header yang tepat: new StringContent(json, Encoding.UTF8, 'application/json'). Untuk data -d, curl secara default menggunakan application/x-www-form-urlencoded; untuk unggahan formulir -F, curl menggunakan multipart/form-data. curl2code memetakan masing-masing ke API HttpClient yang benar.