Μετατροπή curl σε PowerShell
Μετατρέψτε εντολές curl σε κώδικα PowerShell χρησιμοποιώντας την Invoke-RestMethod. Το curl2code εκτελείται εξ ολοκλήρου στο πρόγραμμα περιήγησής σας μέσω WebAssembly — τα δεδομένα σας παραμένουν ιδιωτικά. Για C#, δοκιμάστε τον μετατροπέα curl σε C#. Για Python, δείτε το curl σε Python. Παρακάτω υπάρχουν έτοιμα προς χρήση παραδείγματα PowerShell.
Πώς να αντιγράψετε το curl από το πρόγραμμα περιήγησής σας
- 1
Ανοίξτε τα DevTools
Πατήστε F12 ή Ctrl+Shift+I για να ανοίξετε τα εργαλεία προγραμματιστή του προγράμματος περιήγησης.
- 2
Μεταβείτε στην καρτέλα Network
Κάντε κλικ στην καρτέλα Network και εκτελέστε την ενέργεια που ενεργοποιεί το αίτημα HTTP.
- 3
Αντιγραφή ως cURL
Κάντε δεξί κλικ στο αίτημα → Copy → Copy as cURL. Στη συνέχεια, επικολλήστε το παραπάνω.
Συχνές Ερωτήσεις
Τι είναι το PowerShell Invoke-RestMethod;
Το Invoke-RestMethod είναι το ενσωματωμένο cmdlet του PowerShell για την πραγματοποίηση αιτημάτων HTTP με αυτόματη ανάλυση JSON/XML. Επιστρέφει απευθείας αναλυμένα αντικείμενα — δεν απαιτείται χειροκίνητη αποσειριοποίηση. Διαθέσιμο στο PowerShell 3.0+ και στο PowerShell Core. Το curl2code υποστηρίζει επίσης το Invoke-WebRequest το οποίο επιστρέφει την ακατέργαστη απόκριση.
Invoke-RestMethod vs Invoke-WebRequest — ποιο να χρησιμοποιήσω;
Το Invoke-RestMethod αναλύει αυτόματα τις αποκρίσεις JSON/XML σε αντικείμενα PowerShell — ιδανικό για εργασία με APIs. Το Invoke-WebRequest επιστρέφει την πλήρη απόκριση με κεφαλίδες, κωδικό κατάστασης και ακατέργαστο περιεχόμενο — καλύτερο για αποσφαλμάτωση και αποκρίσεις που δεν είναι JSON. Χρησιμοποιήστε το RestMethod για APIs, και το WebRequest για scraping ή διαγνωστικά. Για μια παρόμοια προσέγγιση .NET, δείτε curl σε C#.
Πώς γίνεται ο χειρισμός της πιστοποίησης στο PowerShell;
Για Bearer: Invoke-RestMethod -Uri $url -Headers @{ Authorization = "Bearer $token" }. Για Basic auth, χρησιμοποιήστε το -Credential (Get-Credential) ή το -Authentication Basic (PowerShell 6+). Το PowerShell χειρίζεται με ασφάλεια τα διαπιστευτήρια με το SecureString. Το curl2code μετατρέπει τις παραμέτρους πιστοποίησης σε παραμέτρους cmdlet του PowerShell.
Πώς στέλνω δεδομένα multipart form στο PowerShell;
Το PowerShell 6+ υποστηρίζει το -Form @{ file = Get-Item "doc.pdf"; desc = "My file" } για multipart μεταφορτώσεις. Στο Windows PowerShell 5.1, κατασκευάστε το σώμα multipart χειροκίνητα ή χρησιμοποιήστε κλάσεις .NET (System.Net.Http.MultipartFormDataContent). Το curl2code χειρίζεται τη μετατροπή της παραμέτρου -F.
Πώς γίνεται ο χειρισμός σφαλμάτων HTTP στο PowerShell;
Χρησιμοποιήστε try/catch: και τα δύο cmdlets εκπέμπουν WebException σε αποκρίσεις που δεν είναι 2xx. Αποκτήστε πρόσβαση στην απόκριση με το $_.Exception.Response. Στο PowerShell 7+, χρησιμοποιήστε το -SkipHttpErrorCheck για να αποτρέψετε την εκπομπή σφάλματος και να ελέγξετε το $response.StatusCode χειροκίνητα.
Πώς γίνεται η εργασία με JSON στο PowerShell;
Το Invoke-RestMethod αναλύει αυτόματα το JSON σε PSObject. Για χειροκίνητη μετατροπή: $data = $json | ConvertFrom-Json. Για αποστολή JSON: $body = @{ name = "John" } | ConvertTo-Json. Το object pipeline του PowerShell ενσωματώνεται φυσικά με τις αναλυμένες αποκρίσεις API για φιλτράρισμα και μετασχηματισμό.
Πώς ορίζονται τα χρονικά όρια στο PowerShell;
Χρησιμοποιήστε την παράμετρο -TimeoutSec 30 και στα δύο cmdlets. Στο PowerShell 7+, χρησιμοποιήστε τα -ConnectionTimeoutSeconds και -OperationTimeoutSeconds για λεπτομερή έλεγχο. Για επαναλήψεις, χρησιμοποιήστε τα -MaximumRetryCount 3 και -RetryIntervalSec 2 (PowerShell 7.1+).
Πώς χρησιμοποιείται ένας proxy στο PowerShell;
Χρησιμοποιήστε την παράμετρο -Proxy 'http://proxy:8080'. Για πιστοποίηση proxy: -ProxyCredential (Get-Credential). Το PowerShell σέβεται τις ρυθμίσεις proxy του συστήματος από προεπιλογή στα Windows. Για παράκαμψη: -NoProxy (PowerShell 6+). Το curl2code μετατρέπει τις παραμέτρους -x σε παραμέτρους proxy του PowerShell.
Πώς να στείλετε ένα POST αίτημα με JSON σώμα στο PowerShell;
Μετατρέψτε μια curl POST εντολή όπως curl -X POST -H "Content-Type: application/json" -d '{"key":"value"}' URL σε PowerShell χρησιμοποιώντας το curl2code. Ο παραγόμενος κώδικας χρησιμοποιεί Invoke-RestMethod -Uri $url -Method Post -Body ($data | ConvertTo-Json) -ContentType 'application/json'. Το curl2code εντοπίζει αυτόματα τα -d/--data flags με JSON περιεχόμενο και ορίζει την κατάλληλη Content-Type κεφαλίδα στον κώδικα Invoke-RestMethod.
Πώς να προσθέσετε εξουσιοδότηση Bearer token στο PowerShell;
Περάστε το curl -H "Authorization: Bearer YOUR_TOKEN" URL στο curl2code και αυτό θα δημιουργήσει κώδικα Invoke-RestMethod με την κεφαλίδα εξουσιοδότησης: -Headers @{ Authorization = 'Bearer YOUR_TOKEN' }. Το curl2code εντοπίζει τα Bearer tokens τόσο από τα -H "Authorization: Bearer ..." όσο και από τα --oauth2-bearer flags. Για Basic auth, χρησιμοποιήστε το -u user:pass.
Πώς να ορίσετε την κεφαλίδα Content-Type στο PowerShell;
Το 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.
Χρήσιμοι σύνδεσμοι
Οδηγοί curl
Κωδικοί σφαλμάτων curl
Αναζητήστε οποιονδήποτε κωδικό εξόδου curl — αιτίες, λύσεις και συμβουλές αποσφαλμάτωσης.
Λήψη αρχείων με curl
Αποθηκεύστε αρχεία με -o, -O, ακολουθήστε ανακατευθύνσεις, συνεχίστε λήψεις και άλλα.
SSL, TLS & Proxy
Ρυθμίστε πιστοποιητικά, εκδόσεις TLS, HTTP/SOCKS proxy και προσαρμοσμένο DNS.