curl-কে C#-এ রূপান্তর করুন
HttpClient ব্যবহার করে curl কমান্ডগুলোকে C# কোডে রূপান্তর করুন। curl2code সম্পূর্ণভাবে WebAssembly-এর মাধ্যমে আপনার ব্রাউজারে চলে — আপনার ডেটা গোপন থাকে। Java ডেভেলপমেন্টের জন্য আমাদের curl to Java converter ব্যবহার করে দেখুন। TypeScript-এর জন্য curl to TypeScript দেখুন। নিচে ব্যবহারের জন্য প্রস্তুত C# উদাহরণ দেওয়া হলো।
আপনার ব্রাউজার থেকে কীভাবে curl কপি করবেন
- 1
DevTools ওপেন করুন
আপনার ব্রাউজার ডেভেলপার টুলস ওপেন করতে F12 অথবা Ctrl+Shift+I চাপুন।
- 2
Network ট্যাবে যান
Network ট্যাবে ক্লিক করুন এবং সেই কাজটি করুন যা HTTP রিকোয়েস্টটি ট্রিগার করে।
- 3
cURL হিসেবে কপি করুন
রিকোয়েস্টের ওপর রাইট-ক্লিক করুন → Copy → Copy as cURL। তারপর এটি উপরে পেস্ট করুন।
সচরাচর জিজ্ঞাসিত প্রশ্নাবলী
C# HttpClient কী?
HttpClient হলো .NET-এর আধুনিক, বিল্ট-ইন HTTP ক্লায়েন্ট। এটি নেটিভলি async/await, HTTP/2, স্বয়ংক্রিয় ডিকম্প্রেশন এবং কানেকশন পুলিং সমর্থন করে। সকেট এক্সহশন (socket exhaustion) এড়াতে আপনার অ্যাপ্লিকেশনে একটি একক HttpClient ইনস্ট্যান্স (অথবা IHttpClientFactory) ব্যবহার করুন। C# কনভার্সনের জন্য curl2code শুধুমাত্র এই লাইব্রেরিটিই ব্যবহার করে।
HttpClient বনাম WebClient বনাম HttpWebRequest — কোনটি ব্যবহার করবেন?
HttpClient হলো আধুনিক স্ট্যান্ডার্ড — নতুন .NET প্রজেক্টের জন্য সর্বদা এটি ব্যবহার করুন। WebClient এবং HttpWebRequest পুরনো এবং নতুন কোডে এগুলো ব্যবহার করা উচিত নয়। HttpClient অ্যাসিনক্রোনাস সাপোর্ট, আরও ভালো পারফরম্যান্স এবং পরিচ্ছন্ন API প্রদান করে। অনুরূপ আধুনিক ক্লায়েন্টের জন্য, curl to Java অথবা curl to Go দেখুন।
C#-এ অথেনটিকেশন কীভাবে হ্যান্ডেল করবেন?
হেডার সেট করুন: client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", token)। Basic অথেনটিকেশনের জন্য, ক্রেডেনশিয়াল এনকোড করুন এবং হেডার সেট করুন। প্রতি রিকোয়েস্টের অথেনটিকেশনের জন্য request.Headers.Authorization ব্যবহৃত হয়। curl2code -u এবং -H 'Authorization' শনাক্ত করে এবং সঠিক C# কোড জেনারেট করে।
C#-এ কীভাবে মাল্টিপার্ট ফর্ম ডেটা পাঠাবেন?
MultipartFormDataContent ব্যবহার করুন: ফিল্ডের জন্য StringContent এবং ফাইলের জন্য StreamContent সহ ContentDisposition যোগ করুন। মাল্টিপার্ট কন্টেন্টটি PostAsync(url, content)-এ পাস করুন। Content-Type বাউন্ডারি স্বয়ংক্রিয়ভাবে সেট হয়ে যায়। curl2code -F ফ্ল্যাগগুলোকে এই প্যাটার্নে কনভার্ট করে।
C#-এ HTTP এরর কীভাবে হ্যান্ডেল করবেন?
non-2xx স্ট্যাটাসের জন্য response.EnsureSuccessStatusCode() থ্রো করতে HttpRequestException কল করুন। অথবা ম্যানুয়ালি response.IsSuccessStatusCode এবং response.StatusCode চেক করুন। HttpRequestException, TaskCanceledException (টাইমআউট) এবং OperationCanceledException-এর জন্য try/catch-এ রাখুন।
HttpClient-এর সাথে কীভাবে async/await ব্যবহার করবেন?
HttpClient ডিজাইনগতভাবেই অ্যাসিনক্রোনাস — সমস্ত মেথড Task রিটার্ন করে: var response = await client.GetAsync(url)। বডির জন্য await response.Content.ReadAsStringAsync() ব্যবহার করুন। প্যারালাল রিকোয়েস্টের জন্য Task.WhenAll() ব্যবহার করুন। কখনোই .Result অথবা .Wait() ব্যবহার করবেন না — এগুলো ডেডলক (deadlock) তৈরি করতে পারে। অনুরূপ অ্যাসিনক্রোনাস প্যাটার্নের জন্য, curl to TypeScript দেখুন।
C# HttpClient-এ কীভাবে টাইমআউট সেট করবেন?
সামগ্রিক টাইমআউটের জন্য client.Timeout = TimeSpan.FromSeconds(30) সেট করুন। প্রতি রিকোয়েস্টের নিয়ন্ত্রণের জন্য, টাইমআউট সহ CancellationTokenSource ব্যবহার করুন: new CancellationTokenSource(TimeSpan.FromSeconds(10))। রিট্রাইয়ের জন্য, Polly লাইব্রেরি অথবা রিট্রাই পলিসি সহ IHttpClientFactory ব্যবহার করুন।
C#-এ প্রক্সি কীভাবে কনফিগার করবেন?
প্রক্সি সহ একটি HttpClientHandler তৈরি করুন: handler.Proxy = new WebProxy("http://proxy:8080")। হ্যান্ডলারটি new HttpClient(handler)-এ পাস করুন। লোকাল অ্যাড্রেসের জন্য প্রক্সি বাইপাস করতে handler.Proxy.BypassProxyOnLocal = true সেট করুন। curl2code -x এবং --proxy ফ্ল্যাগগুলোকে এই সেটআপে কনভার্ট করে।
C#-এ JSON বডি সহ একটি POST রিকোয়েস্ট কীভাবে পাঠাবেন?
curl2code ব্যবহার করে curl -X POST -H "Content-Type: application/json" -d '{"key":"value"}' URL এর মতো একটি curl POST কমান্ডকে C#-এ রূপান্তর করুন। জেনারেট করা কোড new StringContent(json, Encoding.UTF8, 'application/json') ব্যবহার করে। curl2code স্বয়ংক্রিয়ভাবে JSON কন্টেন্ট সহ -d/--data ফ্ল্যাগ শনাক্ত করে এবং HttpClient কোডে উপযুক্ত Content-Type হেডার সেট করে।
C#-এ Bearer token অথরাইজেশন কীভাবে যোগ করবেন?
curl2code-এ curl -H "Authorization: Bearer YOUR_TOKEN" URL পাস করুন এবং এটি অথরাইজেশন হেডার সহ HttpClient কোড জেনারেট করে: client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue('Bearer', token)। curl2code -H "Authorization: Bearer ..." এবং --oauth2-bearer উভয় ফ্ল্যাগ থেকে Bearer token শনাক্ত করে। Basic auth এর জন্য -u user:pass ব্যবহার করুন।
C#-এ Content-Type হেডার কীভাবে সেট করবেন?
curl2code curl -H "Content-Type: application/json" URL কমান্ডকে সঠিক হেডার সহ HttpClient কোডে রূপান্তর করে: new StringContent(json, Encoding.UTF8, 'application/json')। -d ডেটার জন্য curl ডিফল্টভাবে application/x-www-form-urlencoded ব্যবহার করে; -F ফর্ম আপলোডের জন্য এটি multipart/form-data ব্যবহার করে। curl2code প্রতিটি রিকোয়েস্টকে সঠিক HttpClient API-তে ম্যাপ করে।