
Я хочу открыть Chrome с помощью метода URL POST и некоторых данных, таких как ValueOne=Value1 и ValueTwo=Value2 и так далее...
Возможно ли это из командной строки или пакетного режима?
Например, "C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" "http://www.url.com" AndHereTheBodyData
Спасибо
решение1
Насколько мне известно, прямого способа сделать это нет. Но я использовал обходной путь:
TLDR: используйте URL-адрес данных, содержащий форму автоматической отправки.
URL-адреса данныхможет содержать html, который отобразит браузер. Поэтому я поместил форму с данными POST и JS для автоматической отправки в этот URL. Мне пришлось кодировать данные как base_64.
Во-первых, HTML-код, который будет передан в браузер через data-url, выглядит следующим образом:
<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>
Далее базовый формат команды и URL-адреса данных выглядит следующим образом:
start chrome /new-window data:text/html;charset=utf-8;base64,',[base_64_enceded_url] plain-url-in-a-second-tab.tld/path
Для тестирования я использовалонлайн-кодер base64, но для моей реальной задачи я создал текстовый файл через MYSQL, из которого я вырезал и вставил несколько строк за раз в командную строку:
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
(Я добавил REPLACE(), потому что TO_BASE64() добавляет новые строки. Это нарушило бы мое намерение вставить несколько команд в CMD одновременно и усложнило бы вырезание команд из текстового файла в CMD.)
Благодаря этому у меня появилось окно браузера для каждой сущности (продукта), которую мне нужно было редактировать, с тремя вкладками для трех мест, где мне нужно было редактировать.