Mejor explicación de la api
This commit is contained in:
19
libs/api.js
19
libs/api.js
@@ -63,23 +63,28 @@ async function subirDatosDeGolpe(datosParaSubir) {
|
||||
.then(response => response.json())
|
||||
.then(data => {
|
||||
//console.log(data);
|
||||
resultado = true;
|
||||
resultado = true; // Si todo sale bien, devolvemos true
|
||||
})
|
||||
.catch(error => {
|
||||
console.error('Error al subir los datos:', error);
|
||||
resultado = false; // Si algo sale mal, devolvemos false
|
||||
})
|
||||
return resultado;
|
||||
}
|
||||
|
||||
/**
|
||||
* Bucle infinito que sube los datos de golpe al ThingSpeak cada 20 segundos
|
||||
*/
|
||||
async function bucleSubidaDatos() {
|
||||
// Creamos bucle infinito
|
||||
while(true) {
|
||||
await sleep(20000);
|
||||
console.log("Lista por subir: " + peticionesRetrasadas.length);
|
||||
const datosQueSeVanASubir = JSON.parse(JSON.stringify(peticionesRetrasadas))
|
||||
if (await subirDatosDeGolpe(datosQueSeVanASubir)) { // Con eso creamos una copia de los datos del array
|
||||
if (peticionesRetrasadas.length == datosQueSeVanASubir.length) {
|
||||
await sleep(20000); // Esperamos 20 segundos
|
||||
// console.log("Lista por subir: " + peticionesRetrasadas.length);
|
||||
const datosQueSeVanASubir = JSON.parse(JSON.stringify(peticionesRetrasadas))// Creamos una copia de los datos del array
|
||||
if (await subirDatosDeGolpe(datosQueSeVanASubir)) { // Subimos los datos de golpe
|
||||
if (peticionesRetrasadas.length == datosQueSeVanASubir.length) { // Si la cantidad de datos subida es diferente a la cantidad de datos en el array reiniciamos el array
|
||||
peticionesRetrasadas.length = 0;
|
||||
} else {
|
||||
} else { // Puede darse el caso que mientras se suben los datos, lleguen nuevos y los eliminemos sin querer, por eso, sólo eliminamos de la lista original los datos que se han subido
|
||||
peticionesRetrasadas.splice(0, datosQueSeVanASubir.length);
|
||||
//console.log("Datos que se hubieran perdido: " + peticionesRetrasadas)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user