crashzero
Goto Top

Invoke-webrequest url basteln mit Parameterübergabe

Hallo mal wieder .....

ich habe folgendes Problem :

Durch einen Klick auf einer Webseite bekomme ich Parameter zum erstellen einer URL an mein Powershell-Script übergeben.

Das Script soll nun aus diesen beiden Parametern eine URL zusammnstellen und via Invoke-webrequest ohne jegliches Fenster oder Anzeige einmalig ausführen und sich dann beenden.

Ich bekomme 2 Parameter übermittelt :

Dazu musste ich in den Umgebungsvariablen 2 Einträge setzen in denen ich die Parameter bekomme :

Ich bekomme die Parameter :
$parameter1 sowie $parameter2 mit Inhalt gefüllt übermittelt.

Das Script muß dann ein invoke-webrequest wie folgt einmalig (Ohne Fenster, ohne jegliche Meldung) ausführen :

http://localhost:10200/loadfromarchiv:Archiv%20Archiv1%20Ph:$parameter1:$parameter2::

Also im PS ungefähr so :
invoke-webrequest -uri http://localhost:10200/loadfromarchiv:Archiv%20Archiv1%20Ph:[Eintrag aus $parameter1]:[Eintrag aus $parameter2]::

Das Powershell wird direkt aufgerufen und die $parameter1 und $parameter2 mitgegeben, da hapert es bei mir wie ich die mitgegebenen Parameter in den invoke-webrequest zum erfolgreichen Aufruf mit einbinde.

Kann mir da einer helfen ?

Content-ID: 4007675411

Url: https://administrator.de/contentid/4007675411

Ausgedruckt am: 17.11.2024 um 03:11 Uhr

manuel-r
Lösung manuel-r 21.09.2022 aktualisiert um 12:14:33 Uhr
Goto Top
Das Powershell wird direkt aufgerufen und die $parameter1 und $parameter2 mitgegeben, da hapert es bei mir wie ich die mitgegebenen Parameter in den invoke-webrequest zum erfolgreichen Aufruf mit einbinde.

Mit
param (
  $Parameter1,
  $Parameter2
)
am Anfang deines Script übernimmst du Parameter die an dein Script übergeben wurden
Die musst du dann mit der restlichen URL zu einem String zusammensetzen und als Gesamt-URL an den Webrequest übergeben. Das könnstest du (viele Wege führen nach Rom) bspw so machen
$GesamtURL = "http://localhost:10200/loadfromarchiv:Archiv%20Archiv1%20Ph:PARAMETER1:PARAMETER2::".Replace("PARAMETER1", $Parameter1).Replace("PARAMETER2", $Parameter2)  
Invoke-Webrequest $GesamtURL

Manuel
Crashzero
Crashzero 21.09.2022 um 14:08:57 Uhr
Goto Top
Jup danke.

Dein Tip war führend zum Erfolg.

Hab das mit deiner Idee so lösen können :

param (
  $Parameter1,
  $Parameter2,
  $Archivname="Archivname"  
)

$GesamtURL = "http://localhost:10200/loadfromarchiv:$Archivname Ph:${Parameter1}:${Parameter2}::"  
Invoke-Webrequest $GesamtURL

Danke , läuft perfekt .......