Electron hacer peticiones http

Para hacer peticiones de datos o acciones aun servidor desde el front podemos usar Ajax ya que nuestra aplicación es un javascript, pero si la petición es desde el back tendremos que usar un paquete de npm.

Hay varias opciones para hacer peticiones yo me he decidido por Axios, para trabajar con él primero lo instalamos en la carpeta de nuestro proyecto:

npm install axios

Y en la parte superior de nuestro archivo index.js lo instanciamos:

const axios = require('axios');

Seguimos trabajando en nuestro archivo index.js, para hacer una petición post usamos:

let laurl = "http://nopmbredeldoiminio.com/damedatos.php";
let data = { inicio: arg.dato.inic, fin: arg.dato.fin };
axios.post(laurl, data ).then(function (response) {
event.returnValue = { result: 'ok', dato: JSON.parse(response.data) };
}).catch(function (error) {
event.returnValue = { result: 'error', dato: error };
});

En el php las variables no llegan como post exactamente hay que trabajarlas primero:

if (!isset($_POST["inicio"])) { $inicio = ""; }else{ $inicio = $_POST["inicio"]; }
if (!isset($_POST["fin"])) { $fin = ""; }else{ $fin = $_POST["fin"]; }
if(empty($_POST['inicio'])) {
$body = file_get_contents('php://input');
$json = json_decode($body, true);
if (!isset($json["inicio"])) { $inicio = ""; }else{ $inicio = $json["inicio"]; }
if (!isset($json["fin"])) { $fin = ""; }else{ $fin = $json["fin"]; }
}

El artículo anterior fue «Manejo de archivos en electron mediante fs» y el siguiente artículo «Electronjs trabajar con archivos zip».

Compartir