Platform
Tarea programada
13 min
cómo crear tu trabajo cron de parse introducción esta sección explica cómo puedes programar un trabajo cron usando las características principales de parse server a través de back4app para este tutorial, como ejemplo, construirás un trabajo cron que elimina a los usuarios de tu tablero de parse tablero de parse que no han verificado sus correos electrónicos algún tiempo después de haberse registrado en cualquier momento, puedes acceder al proyecto completo construido para este tutorial en nuestro repositorio de github requisitos previos para completar este tutorial, necesitas una aplicación creada en back4app nota sigue el tutorial de nueva aplicación parse para aprender cómo crear una aplicación parse en back4app conocimiento sobre cloud code nota sigue el tutorial de cloud code para android o el tutorial de cloud code para ios para más información un dispositivo (o dispositivo virtual ) que ejecute android 4 0 (ice cream sandwich) o más reciente 1 crea tu código de trabajo cron crea un js js archivo para poner tu código de trabajo cron en este ejemplo, se crea un main js main js archivo en un cloud code cloud code directorio define una función de trabajo usando parse cloud job parse cloud job en este ejemplo, el siguiente código verifica a cada usuario en tu parse dashboard parse dashboard , luego consulta a aquellos que aún tienen su correo electrónico no verificado después de un tiempo y los destruye parse server 3 x main js 1 parse cloud job("removeinvalidlogin", async (request) => { 2 let date = new date(); 3 let timenow = date gettime(); 4 let intervaloftime = 3 60 1000; // the time set is 3 minutes in milliseconds 5 let timethen = timenow intervaloftime; 6 7 // limit date 8 let querydate = new date(); 9 querydate settime(timethen); 10 11 // the query object 12 let query = new parse query(parse user); 13 14 // query the users that still unverified after 3 minutes 15 query equalto("emailverified", false); 16 query lessthanorequalto("createdat", querydate); 17 18 const results = await query find({usemasterkey\ true}); 19 20 results foreach(object => { 21 object destroy({usemasterkey true}) then(destroyed => { 22 console log("successfully destroyed object" + json stringify(destroyed)); 23 }) catch(error => { 24 console log("error " + error code + " " + error message); 25 }) 26 }); 27 28 return ("successfully retrieved " + results length + " invalid logins "); 29 }); parse server 2 x main js 1 parse cloud job("removeinvalidlogin", function (request, response) { 2 var date = new date(); 3 var timenow = date gettime(); 4 var intervaloftime = 3 60 1000; // the time set is 3 minutes in milliseconds 5 var timethen = timenow intervaloftime; 6 7 // limit date 8 var querydate = new date(); 9 querydate settime(timethen); 10 11 // the query object 12 var query = new parse query(parse user); 13 14 // query the users that still unverified after 3 minutes 15 query equalto("emailverified", false); 16 query lessthanorequalto("createdat", querydate); 17 18 query find({ 19 success function (results) { 20 console log("successfully retrieved " + results length + " invalid logins "); 21 22 // destroying the invalid users 23 query each(function (object, err) { 24 object destroy({ 25 success function (object) { 26 response success("successfully destroyed object " + object objectid); 27 }, 28 error function (error) { 29 response error("error " + error code + " " + error message); 30 }, 31 usemasterkey true // very important!! 32 }) 33 }) 34 }, 35 error function (error) { 36 response error("error " + error code + " " + error message); 37 } 38 }); 39 }); se requiere usar la clave maestra en esta operación puedes modificar el intervaloftime intervaloftime contenido con la cantidad de tiempo que crees que un usuario no verificado puede tener su cuenta activa sin verificarla solo no olvides que para probar tu aplicación, pequeños intervalos de tiempo son mejores así que, se sugiere que configures el intervaloftime intervaloftime contenido a tres minutos para probar si el trabajo cron está funcionando y luego cambia el código javascript con la cantidad de tiempo que realmente deseas que intervaloftime intervaloftime sea no olvides que los cambios en el archivo javascript solo se computan en tu aplicación si vuelves a subir el archivo en el bloque de código en la nube de back4app para hacer esto, elimina el js js archivo con el intervaloftime intervaloftime no deseado y sigue el paso 2 para subir el archivo con el correcto intervaloftime intervaloftime contenido 2 subir trabajo cron a cloud code para saber más sobre cómo comenzar con cloud code, mira tutorial de cloud code para android o tutorial de cloud code para ios ve a tu aplicación en el back4app sitio web y haz clic en tablero tablero encuentra el código en la nube código en la nube y haz clic en funciones y alojamiento web funciones y alojamiento web se ve así 3\ sube o crea un nuevo archivo (también puedes editar el main js main js archivo directamente en el navegador) luego, haz clic en desplegar desplegar como se muestra aquí 3 programar trabajo cron en back4app ve a tu aplicación en el sitio web de back4app y haz clic en configuración del servidor configuración del servidor encuentra el bloque “trabajos en segundo plano” y haz clic en configuraciones configuraciones el bloque “trabajos en segundo plano” se ve así 3\ aparecerá una página de trabajos en segundo plano y se mostrarán dos opciones navegar un trabajo o programar un trabajo haz clic en programar un trabajo, como se muestra a continuación si quieres editar editar , ejecutar ahora ejecutar ahora , o eliminar eliminar un trabajo cron existente, haz clic en el botón navegar un trabajo navegar un trabajo 4\ aparecerá una página para programar un trabajo y debes completar el campo de descripción descripción de tu trabajo con su descripción y también el campo trabajo en la nube trabajo en la nube con el nombre que le diste a tu trabajo cron en la primera línea de su código javascript en este ejemplo, el nombre del trabajo cron creado es removeinvalidlogin removeinvalidlogin 5\ también puedes establecer otras opciones para tu trabajo cron, como a qué hora debe comenzar a ejecutarse, si debe repetirse y con qué frecuencia después de completar estas opciones con tus preferencias, haz clic en el botón guardar guardar 4 prueba tu aplicación crea algunos usuarios con emailverified emailverified columna establecida como false false en tu parse dashboard parse dashboard , como se muestra a continuación 2\ ejecuta tu aplicación y actualiza tu parse dashboard parse dashboard debería haber destruido los usuarios no verificados para el parse dashboard parse dashboard mostrado arriba, este es el resultado también puedes ver si el trabajo cron está funcionando accediendo a los registros de back4app para hacer eso, sigue estos pasos ve a tu aplicación en el sitio web de back4app y haz clic en configuración del servidor configuración del servidor encuentra el bloque “registros” y haz clic en configuración configuración el bloque “registros” se ve así 3 desplázate por la página hasta que veas el registro del sistema del servidor registro del sistema del servidor allí deberías encontrar información sobre el trabajo cron que se está ejecutando, como se muestra a continuación ¡está hecho! ¡en esta etapa, puedes programar trabajos cron en tu aplicación utilizando las características del núcleo de parse server a través de back4app!