
Ich möchte Chrome mit einer URL-Methode POST und einigen Daten wie ValueOne=Value1 und ValueTwo=Value2 usw. öffnen …
Ist dies über die Befehlszeile oder im Batch möglich?
Wie "C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" "http://www.url.com" UndHierDieKörperdaten
Danke
Antwort1
Soweit ich weiß, gibt es dafür keine direkte Möglichkeit. Aber ich habe einen Workaround verwendet:
TLDR: Verwenden Sie eine Daten-URL, die ein automatisch übermittelndes Formular enthält.
Daten-URLskann HTML enthalten, das der Browser anzeigen wird. Also habe ich ein Formular mit den POST-Daten und JS zur automatischen Übermittlung an diese URL erstellt. Ich musste die Daten als Base_64 kodieren.
Zunächst sieht das HTML, das über die Daten-URL an den Browser übergeben wird, folgendermaßen aus:
<body onload="document.s.submit()">
<form action="domain.tld/path/script.php" name="s" method="post">
<input type="hidden" name="action" value="edit">
<input type="submit" value="go">
</form>
</body>
Als nächstes sieht das grundlegende Format des Befehls und der Daten-URL folgendermaßen aus:
start chrome /new-window data:text/html;charset=utf-8;base64,',[base_64_enceded_url] plain-url-in-a-second-tab.tld/path
Zum Testen verwendete ich einOnline-Base64-Encoder, aber für meine eigentliche Aufgabe habe ich eine txt-Datei über MySQL erstellt, aus der ich nach und nach einzelne Zeilen ausgeschnitten und in die Befehlszeile eingefügt habe:
CONCAT ('start chrome /new-window data:text/html;charset=utf-8;base64,',
REPLACE(TO_BASE64(CONCAT('<body onload="document.s.submit()"> <form action="somedomain.tld/admin/new_attrib.php" name="s" method="post"><input type="hidden" name="action" value="edit"><input type="submit" value="go"></form></body>')), '\n', ''), ' "anotherurl.tld/somepage.php?products_id=',p.products_id,'&action=edit" AS PasteMeToWindowsCMD
(Ich habe REPLACE() hinzugefügt, weil TO_BASE64() Zeilenumbrüche hinzufügt. Diese hätten mein Vorhaben, mehrere Befehle gleichzeitig in CMD einzufügen, zunichte gemacht und das Einfügen von Befehlen aus einer Textdatei in CMD komplizierter gemacht.)
Damit erhielt ich für jede Entität (Produkt), die ich bearbeiten musste, ein Browserfenster mit drei Registerkarten für die drei Stellen, an denen ich Änderungen vornehmen musste.