
Quiero abrir Chrome con un método de URL POST y algunos datos como ValueOne=Value1 y ValueTwo=Value2 y así sucesivamente...
¿Es posible desde la línea de comandos o por lotes?
Como "C:\Archivos de programa (x86)\Google\Chrome\Application\chrome.exe" "http://www.url.com"YAquíElCuerpoDatos
Gracias
Respuesta1
Hasta donde yo sé, no hay una forma directa de hacerlo. Pero utilicé una solución alternativa:
TLDR; Utilice una URL de datos que contenga un formulario de envío automático.
URL de datospuede contener html que mostrará el navegador. Así que puse un formulario con los datos POST y JS para enviarlo automáticamente a esa URL. Tuve que codificar los datos como base_64.
Primero, el HTML que se pasará al navegador a través de la URL de datos tiene este aspecto:
<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>
A continuación, el formato básico del comando y la URL de datos es el siguiente:
start chrome /new-window data:text/html;charset=utf-8;base64,',[base_64_enceded_url] plain-url-in-a-second-tab.tld/path
Para las pruebas, utilicé uncodificador base64 en línea, pero para mi tarea real creé un archivo txt a través de MYSQL, del cual corté y pegué un montón de líneas a la vez en la línea de comandos:
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
(Agregué REPLACE() porque TO_BASE64() agrega nuevas líneas. Eso habría roto mi intención de pegar varios comandos en CMD al mismo tiempo y habría hecho que cortar comandos de un archivo de texto a CMD fuera más complicado).
Con esto, obtuve una ventana del navegador para cada entidad (producto) que tenía que editar, con tres pestañas para tres lugares donde necesitaba editar.