cURL zu PowerShell

curl-Befehl einfügen und ein PowerShell-Skript mit Invoke-RestMethod erhalten – mit Anführungszeichen, die Ihr Token nicht verschlucken.

cURL zu PowerShell wandelt in Ihrem Browser um. Befehle mit Zugangsdaten verlassen Ihr Gerät nicht.

cURL zu C# öffnen

Über cURL to PowerShell

Einen curl-Befehl in PowerShell einzufügen funktioniert selten, und nicht nur wegen der Flags. PowerShell interpoliert Variablen in doppelten Anführungszeichen, ein Token mit Dollarzeichen wird also stillschweigend zur leeren Zeichenkette und die Anfrage kommt als 401 zurück. Dieser Konverter erzeugt Literale in einfachen Anführungszeichen, die PowerShell als reinen Text behandelt. Header werden zur Hashtable, ein JSON-Body geht durch ConvertTo-Json.

Funktionen

So verwendest du cURL to PowerShell

  1. curl-Befehl aus der Dokumentation kopieren
  2. Links einfügen
  3. Den erzeugten PowerShell-Code rechts prüfen
  4. Kopieren oder als .ps1-Datei herunterladen

Beispiel

Eingabe

curl https://api.example.com/users -H "X-Api-Key: abc123"

Ausgabe

$headers = @{
    'X-Api-Key' = 'abc123'
}

$response = Invoke-RestMethod `
    -Uri 'https://api.example.com/users' `
    -Method GET `
    -Headers $headers

Einfache Anführungszeichen halten den Wert wörtlich, welche Zeichen auch immer darin stehen.

Häufige Fehler & Fehlerbehebung

Häufig gestellte Fragen

Ist curl in PowerShell dasselbe wie Invoke-WebRequest?
In Windows PowerShell 5.1 ist curl ein Alias für Invoke-WebRequest, weshalb ein echter curl-Befehl mit verwirrenden Parameterfehlern scheitert. PowerShell 7 hat den Alias entfernt.
Invoke-RestMethod oder Invoke-WebRequest?
Für APIs Invoke-RestMethod, weil es eine JSON-Antwort direkt in Objekte verwandelt. Invoke-WebRequest liefert die rohe Antwort mit Statuscode und Headern – sinnvoll, wenn diese Details zählen.
Wie sende ich Basic Authentication in PowerShell?
Benutzername:Passwort in Base64 kodieren und als Authorization-Header senden. Der Parameter -Credential existiert, sendet aber erst nach einer Challenge, die viele APIs nie schicken.
Warum sind die Parameter mit Backticks getrennt?
Der Backtick ist PowerShells Zeilenfortsetzungszeichen, damit ein langer Aufruf über mehrere Zeilen lesbar bleibt. Er muss das letzte Zeichen der Zeile sein, ohne Leerzeichen dahinter.

Verwandte Tools

Alle ArrayKit-Tools