Platform
크론잡
13 분
파스 크론 작업 생성 방법 소개 이 섹션에서는 back4app을 사용하여 크론 작업을 예약하는 방법을 설명합니다 이 튜토리얼에서는 예제로, 가입한 후 이메일을 확인하지 않은 사용자를 제거하는 크론 작업을 구축할 것입니다 파스 대시보드 파스 대시보드 언제든지 이 튜토리얼을 위해 구축된 전체 프로젝트에 접근할 수 있습니다 unhandled content type github 저장소 전제 조건 이 튜토리얼을 완료하려면 다음이 필요합니다 back4app에서 생성된 앱 참고 새 parse 앱 튜토리얼 을 따라 back4app에서 parse 앱을 만드는 방법을 배우세요 클라우드 코드에 대한 지식 참고 안드로이드용 클라우드 코드 튜토리얼 또는 ios용 클라우드 코드 튜토리얼 을 참조하여 더 많은 정보를 얻으세요 안드로이드 4 0 (아이스크림 샌드위치) 이상에서 실행되는 장치 (또는 가상 장치 ) 1 크론 작업 코드 생성 크론 작업 코드를 넣을 js js 파일을 만듭니다 이 예제에서는 main js main js 파일이 cloud code cloud code 디렉토리에 생성됩니다 다음과 같이 parse cloud job parse cloud job 을 사용하여 작업 함수를 정의합니다 이 예제에서는 다음 코드를 사용하여 parse dashboard parse dashboard 의 모든 사용자를 확인한 다음, 일정 시간이 지난 후 이메일이 확인되지 않은 사용자들을 쿼리하여 삭제합니다 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 }); 이 작업에는 마스터 키 를 사용해야 합니다 검증되지 않은 사용자가 여전히 계정을 활성 상태로 유지할 수 있는 시간의 양으로 intervaloftime intervaloftime 내용을 수정할 수 있습니다 애플리케이션을 테스트할 때는 짧은 시간 간격이 더 좋다는 것을 잊지 마세요 따라서 intervaloftime intervaloftime 내용을 세 분으로 설정하여 크론 작업이 작동하는지 테스트한 후, 실제로 원하는 시간의 양으로 intervaloftime intervaloftime 을 변경하는 것이 좋습니다 javascript 파일에 대한 변경 사항은 back4app cloud code 블록에 파일을 다시 업로드해야만 애플리케이션에서 계산됩니다 이를 위해 원하지 않는 js js 파일을 삭제하고 intervaloftime intervaloftime 내용이 올바른 intervaloftime intervaloftime 내용으로 파일을 업로드하기 위해 2단계를 따르세요 2 크론 작업을 cloud code에 업로드하기 cloud code를 시작하는 방법에 대해 더 알고 싶다면 android용 cloud code 튜토리얼 또는 ios용 cloud code 튜토리얼 을 참조하세요 앱으로 가세요 back4app 웹사이트에서 대시보드 대시보드 를 클릭하세요 클라우드 코드 클라우드 코드 를 찾아서 기능 및 웹 호스팅 기능 및 웹 호스팅 을 클릭하세요 이렇게 보입니다 3\ 새 파일을 업로드하거나 생성하세요 (현재 main js main js 파일을 브라우저에서 직접 편집할 수도 있습니다) 그런 다음, 배포 배포 를 클릭하세요 여기와 같이 3 back4app에서 크론 작업 예약하기 앱에 가서 back4app 웹사이트 를 클릭합니다 “백그라운드 작업” 블록을 찾아 설정 설정 을 클릭합니다 “백그라운드 작업” 블록은 다음과 같습니다 3\ 백그라운드 작업 페이지가 나타나고 두 가지 옵션이 표시됩니다 작업 브라우저 또는 작업 예약 아래와 같이 작업 예약을 클릭합니다 원하는 경우 편집 편집 , 지금 실행 지금 실행 , 또는 삭제 삭제 기존의 크론 작업을 수정하려면 작업 브라우저 작업 브라우저 버튼을 클릭하세요 4\ 작업 예약 페이지가 나타나고, 작업의 설명 설명 필드를 작업의 설명으로 채워야 하며, 또한 클라우드 작업 클라우드 작업 필드는 javascript 코드의 첫 번째 줄에 설정한 크론 작업의 이름으로 채워야 합니다 이 예제에서 생성된 크론 작업의 이름은 removeinvalidlogin removeinvalidlogin 입니다 5\ 크론 작업의 시작 시간, 반복 여부 및 빈도를 설정할 수 있습니다 이러한 옵션을 선호하는 대로 채운 후 저장 저장 버튼을 클릭하세요 4 앱 테스트하기 다음과 같이 emailverified emailverified 열을 false false 로 설정하여 사용자 몇 명을 생성하세요 parse dashboard parse dashboard , 아래와 같이 2\ 애플리케이션을 실행하고 parse dashboard parse dashboard 를 새로 고치세요 확인되지 않은 사용자가 삭제되었어야 합니다 위에 표시된 parse dashboard parse dashboard 의 경우, 결과는 다음과 같습니다 크론 작업이 작동하는지 확인하려면 back4app 로그에 접근할 수 있습니다 그렇게 하려면 다음 단계를 따르세요 back4app 웹사이트 로 가서 서버 설정 서버 설정 을 클릭하세요 “로그” 블록을 찾아서 설정 설정 을 클릭하세요 “로그” 블록은 다음과 같이 생겼습니다 3 페이지를 스크롤하여 서버 시스템 로그 서버 시스템 로그 를 찾으세요 거기에서 실행 중인 크론 작업에 대한 정보를 찾아야 합니다 완료되었습니다! 이 단계에서 back4app을 통해 parse server core 기능을 사용하여 애플리케이션에서 크론 작업을 예약할 수 있습니다!