URLs und APIs mit PowerShell abrufen
Das Abrufen einer URL oder das Ansprechen einer API gehört zu den häufigsten Aufgaben in PowerShell. Ob man Statusinformationen von einer Website prüfen, Dateien herunterladen oder REST-APIs abfragen möchte – PowerShell bietet dafür eingebaute Befehle.
1. Aufruf mit Invoke-WebRequest
Mit Invoke-WebRequest lassen sich Webseiten und Dateien abrufen.
Beispiel:
$response = Invoke-WebRequest -Uri "https://example.com"
$response.Content
Das Cmdlet liefert den kompletten HTTP-Response zurück, inklusive Statuscode, Headern und Inhalt.
Eine Datei kann so heruntergeladen werden:
Invoke-WebRequest -Uri "https://example.com/datei.zip" -OutFile "C:\Temp\datei.zip"
2. APIs abfragen mit Invoke-RestMethod
Für Web-APIs, die JSON oder XML zurückgeben, eignet sich Invoke-RestMethod. Es wandelt die Antwort automatisch in PowerShell-Objekte um:
$data = Invoke-RestMethod -Uri "https://api.github.com"
$data.current_user_url
Auch POST-Anfragen sind möglich:
Invoke-RestMethod -Uri "https://api.example.com/data" -Method POST -Body '{"name":"Max"}' -ContentType "application/json"
3. PowerShell aus der Kommandozeile aufrufen
PowerShell-Befehle lassen sich direkt aus der klassischen Windows-Eingabeaufforderung (cmd) ausführen:
powershell -Command "Invoke-WebRequest -Uri 'https://example.com'"
Oder – wenn installiert – mit curl:
curl https://example.com
Fazit
Mit wenigen Befehlen lässt sich PowerShell als vielseitiges Werkzeug für Webabfragen und API-Kommunikation einsetzen – ideal für Automatisierung, Systemchecks oder den Zugriff auf Online-Ressourcen.
Comments