curl کو PowerShell میں تبدیل کریں
Invoke-RestMethod کا استعمال کرتے ہوئے curl کمانڈز کو PowerShell کوڈ میں تبدیل کریں۔ curl2code مکمل طور پر WebAssembly کے ذریعے آپ کے براؤزر میں چلتا ہے — آپ کا ڈیٹا نجی رہتا ہے۔ C# کے لیے، ہمارا curl to C# کنورٹر آزمائیں۔ 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 رسپانسز کے لیے بہتر ہے۔ APIs کے لیے 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 استعمال کریں: دونوں cmdlets غیر 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 میں ٹائم آؤٹ کیسے سیٹ کریں؟
دونوں cmdlets پر -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 ٹوکن کی اجازت کیسے شامل کریں؟
curl2code کو curl -H "Authorization: Bearer YOUR_TOKEN" URL فراہم کریں اور یہ auth ہیڈر کے ساتھ Invoke-RestMethod کوڈ تیار کرتا ہے: -Headers @{ Authorization = 'Bearer YOUR_TOKEN' }۔ curl2code دونوں -H "Authorization: Bearer ..." اور --oauth2-bearer فلیگز سے Bearer ٹوکنز کا پتہ لگاتا ہے۔ 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 کے ساتھ میپ کرتا ہے۔