curl-কে PowerShell-এ রূপান্তর করুন
Invoke-RestMethod ব্যবহার করে curl কমান্ডগুলোকে PowerShell কোডে রূপান্তর করুন। curl2code সম্পূর্ণভাবে WebAssembly-এর মাধ্যমে আপনার ব্রাউজারে চলে — আপনার ডেটা গোপন থাকে। C#-এর জন্য আমাদের curl to C# converter ব্যবহার করে দেখুন। Python-এর জন্য curl to Python দেখুন। নিচে ব্যবহারের জন্য প্রস্তুত PowerShell উদাহরণ দেওয়া হলো।
আপনার ব্রাউজার থেকে কীভাবে curl কপি করবেন
- 1
DevTools ওপেন করুন
আপনার ব্রাউজার ডেভেলপার টুলস ওপেন করতে F12 অথবা Ctrl+Shift+I চাপুন।
- 2
Network ট্যাবে যান
Network ট্যাবে ক্লিক করুন এবং সেই কাজটি করুন যা HTTP রিকোয়েস্টটি ট্রিগার করে।
- 3
cURL হিসেবে কপি করুন
রিকোয়েস্টের ওপর রাইট-ক্লিক করুন → Copy → Copy as cURL। তারপর এটি উপরে পেস্ট করুন।
সচরাচর জিজ্ঞাসিত প্রশ্নাবলী
PowerShell Invoke-RestMethod কী?
Invoke-RestMethod হলো PowerShell-এর বিল্ট-ইন cmdlet যা স্বয়ংক্রিয় JSON/XML পার্সিং সহ HTTP রিকোয়েস্ট করে। এটি সরাসরি পার্স করা অবজেক্ট রিটার্ন করে — কোনো ম্যানুয়াল ডিসিরিয়ালাইজেশনের প্রয়োজন নেই। এটি PowerShell 3.0+ এবং PowerShell Core-এ উপলব্ধ। curl2code Invoke-WebRequest-ও সমর্থন করে যা র (raw) রেসপন্স রিটার্ন করে।
Invoke-RestMethod বনাম Invoke-WebRequest — কোনটি ব্যবহার করবেন?
Invoke-RestMethod স্বয়ংক্রিয়ভাবে JSON/XML রেসপন্সকে PowerShell অবজেক্টে পার্স করে — যা API-এর কাজের জন্য আদর্শ। Invoke-WebRequest হেডার, স্ট্যাটাস কোড এবং র কন্টেন্টসহ সম্পূর্ণ রেসপন্স রিটার্ন করে — যা ডিবাগিং এবং নন-JSON রেসপন্সের জন্য ভালো। API-এর জন্য RestMethod এবং স্ক্র্যাপিং বা ডায়াগনস্টিকসের জন্য WebRequest ব্যবহার করুন। অনুরূপ .NET পদ্ধতির জন্য curl to C# দেখুন।
PowerShell-এ অথেন্টিকেশন কীভাবে হ্যান্ডেল করবেন?
Bearer-এর জন্য: Invoke-RestMethod -Uri $url -Headers @{ Authorization = "Bearer $token" }। Basic auth-এর জন্য -Credential (Get-Credential) অথবা -Authentication Basic (PowerShell 6+) ব্যবহার করুন। PowerShell SecureString-এর মাধ্যমে নিরাপদে ক্রেডেনশিয়াল হ্যান্ডেল করে। curl2code অথেন্টিকেশন ফ্ল্যাগগুলোকে PowerShell cmdlet প্যারামিটারে কনভার্ট করে।
PowerShell-এ কীভাবে মাল্টিপার্ট ফর্ম ডেটা পাঠাবেন?
PowerShell 6+ মাল্টিপার্ট আপলোডের জন্য -Form @{ file = Get-Item "doc.pdf"; desc = "My file" } সমর্থন করে। Windows PowerShell 5.1-এ ম্যানুয়ালি মাল্টিপার্ট বডি তৈরি করুন অথবা .NET ক্লাস (System.Net.Http.MultipartFormDataContent) ব্যবহার করুন। curl2code -F ফ্ল্যাগ কনভার্সন হ্যান্ডেল করে।
PowerShell-এ HTTP এরর কীভাবে হ্যান্ডেল করবেন?
try/catch ব্যবহার করুন: উভয় cmdlet-ই নন-2xx রেসপন্সের ক্ষেত্রে WebException থ্রো করে। $_.Exception.Response দিয়ে রেসপন্স অ্যাক্সেস করুন। PowerShell 7+-এ এরর থ্রো করা বন্ধ করতে -SkipHttpErrorCheck ব্যবহার করুন এবং পরিবর্তে ম্যানুয়ালি $response.StatusCode চেক করুন।
PowerShell-এ JSON নিয়ে কীভাবে কাজ করবেন?
Invoke-RestMethod স্বয়ংক্রিয়ভাবে JSON-কে PSObject-এ পার্স করে। ম্যানুয়াল কনভার্সনের জন্য: $data = $json | ConvertFrom-Json। JSON পাঠানোর জন্য: $body = @{ name = "John" } | ConvertTo-Json। ফিল্টারিং এবং ট্রান্সফরমেশনের জন্য PowerShell-এর অবজেক্ট পাইপলাইন পার্স করা API রেসপন্সের সাথে স্বাভাবিকভাবেই ইন্টিগ্রেট করে।
PowerShell-এ টাইমআউট কীভাবে সেট করবেন?
উভয় cmdlet-এ -TimeoutSec 30 প্যারামিটার ব্যবহার করুন। সূক্ষ্ম নিয়ন্ত্রণের জন্য PowerShell 7+-এ -ConnectionTimeoutSeconds এবং -OperationTimeoutSeconds ব্যবহার করুন। রিট্রাইয়ের জন্য -MaximumRetryCount 3 এবং -RetryIntervalSec 2 (PowerShell 7.1+) ব্যবহার করুন।
PowerShell-এ প্রক্সি কীভাবে ব্যবহার করবেন?
-Proxy 'http://proxy:8080' প্যারামিটার ব্যবহার করুন। প্রক্সি অথেন্টিকেশনের জন্য: -ProxyCredential (Get-Credential)। PowerShell উইন্ডোজে ডিফল্টভাবে সিস্টেম-ওয়াইড প্রক্সি সেটিংস মেনে চলে। বাইপাস করতে: -NoProxy (PowerShell 6+)। curl2code -x ফ্ল্যাগগুলোকে PowerShell প্রক্সি প্যারামিটারে কনভার্ট করে।
PowerShell-এ JSON বডি সহ একটি POST রিকোয়েস্ট কীভাবে পাঠাবেন?
curl2code ব্যবহার করে curl -X POST -H "Content-Type: application/json" -d '{"key":"value"}' URL এর মতো একটি curl POST কমান্ডকে PowerShell-এ রূপান্তর করুন। জেনারেট করা কোড Invoke-RestMethod -Uri $url -Method Post -Body ($data | ConvertTo-Json) -ContentType 'application/json' ব্যবহার করে। curl2code স্বয়ংক্রিয়ভাবে JSON কন্টেন্ট সহ -d/--data ফ্ল্যাগ শনাক্ত করে এবং Invoke-RestMethod কোডে উপযুক্ত Content-Type হেডার সেট করে।
PowerShell-এ Bearer token অথরাইজেশন কীভাবে যোগ করবেন?
curl2code-এ curl -H "Authorization: Bearer YOUR_TOKEN" URL পাস করুন এবং এটি অথরাইজেশন হেডার সহ Invoke-RestMethod কোড জেনারেট করে: -Headers @{ Authorization = 'Bearer YOUR_TOKEN' }। curl2code -H "Authorization: Bearer ..." এবং --oauth2-bearer উভয় ফ্ল্যাগ থেকে Bearer token শনাক্ত করে। Basic auth এর জন্য -u user:pass ব্যবহার করুন।
PowerShell-এ Content-Type হেডার কীভাবে সেট করবেন?
curl2code curl -H "Content-Type: application/json" URL কমান্ডকে সঠিক হেডার সহ Invoke-RestMethod কোডে রূপান্তর করে: -ContentType 'application/json'। -d ডেটার জন্য curl ডিফল্টভাবে application/x-www-form-urlencoded ব্যবহার করে; -F ফর্ম আপলোডের জন্য এটি multipart/form-data ব্যবহার করে। curl2code প্রতিটি রিকোয়েস্টকে সঠিক Invoke-RestMethod API-তে ম্যাপ করে।