GAS를 사용하여 Heroku에 배포한 애플리케이션을 정기적으로 실행
7082 단어 경 6GoogleAppsScript
어디까지나 GAS의 내용이므로, Heroku 어플리케이션의 작성·배포라고 하는 내용은 언급하지 않습니다.
※Heroku 어플리케이션의 작성·배포 방법에 대해서는 과거 기사가 있으므로, 참고까지. . .
Flask+gunicorn을 사용하여 만든 Twitter 연계 앱을 Heroku에 배포한 이야기
전제 조건
GAS 프로젝트 만들기
GAS 프로젝트를 만듭니다.
Google アプリ
에서 ドライブ
를 선택합니다. 新規
를 클릭하고 컨텍스트 메뉴를 その他
→ Google Apps Script
로 이동합니다.保存
를 클릭하면 프로젝트 이름 설정 대화 상자가 표시되므로 프로젝트 이름을 test_script
로 설정하고 OK
를 클릭합니다.GAS 스크립트 작성
GAS 스크립트를 작성합니다.
코드.gs
function setTrigger() {
var setTime = new Date();
setTime.setHours(setTime.getHours() + 1);
setTime.setMinutes(00);
setTime.setSeconds(00);
ScriptApp.newTrigger('sendMessage').timeBased().at(setTime).create();
}
function delTrigger() {
const triggers = ScriptApp.getProjectTriggers();
for(const trigger of triggers) {
if(trigger.getHandlerFunction() == 'sendMessage') {
ScriptApp.deleteTrigger(trigger);
}
}
}
function sendMessage() {
delTrigger();
setTrigger();
var options = {
muteHttpExceptions:true
};
var url = 'https://AppName.herokuapp.com/';
var data = UrlFetchApp.fetch(url, options).getContentText();
}
sendMessage()
URL 문자열에 포함된 AppName
는 자신의 Heroku 응용 프로그램의 앱 이름으로 바꿉니다.保存
를 클릭하여 스크립트를 저장합니다.GAS 스크립트 실행
작성한 스크립트를 실행합니다.
関数を選択
콤보 상자에서 SendMessage
를 선택하고 実行
를 클릭합니다.실행 결과 확인
스크립트 실행 결과를 확인합니다.
現在のプロジェクトのトリガー
를 클릭합니다. 해설
이 스크립트의 주요 함수입니다. 다음 세 가지 기능을 수행합니다.
sendMessage() 런타임에 호출되고 변수
setTime
에 설정된 시간에 트리거를 만듭니다.Date 형식의
setXxxs()
함수를 사용하여 연월 일시 분 초를 설정할 수 있습니다.샘플 코드에서는
現在時刻+1時0分0秒
에 트리거가 설정되도록 되어 있습니다.트리거는 정기적으로 만들어지므로 위를 바꾸면
毎時0分
트리거가 설정됩니다.sendMessage () 실행시에 불려 가 이 스크립트에 의해 작성된 트리거를 모두 삭제합니다.
이 함수 실행 후 새 트리거가 생성되므로 트리거 목록에는 항상 실행 예정인 트리거만 존재합니다.
참고
Reference
이 문제에 관하여(GAS를 사용하여 Heroku에 배포한 애플리케이션을 정기적으로 실행), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/Rinkey3/items/2aa017a4de15c2f07ffe텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)