2014-03-07 4 views
2

외부 API를 통해 데이터를 가져 오는 Google Apps Script 애플리케이션을 구축했습니다.함수가 트리거 될 때 UrlFetch를 수행 할 수 없습니다.

나는이 응용 프로그램을 실행할 때 아무런 오류없이 예상되는 결과를 얻을 수 있습니다. 그러나 Time-Driven Trigger로 실행하면 오류가 발생합니다. 누구나이 오류가 발생하는 이유를 아십니까?

코드 : 또한

function triggerFetchTest() { 

    // get token 
    try { 

    var id = "my_id", 
     password = "my_password", 
     tokenUrl = ("https://api.example.jp/v1/foo/auth/get_token?id=" + id 
        + "&password=" + password), 
     tokenResponse = UrlFetchApp.fetch(tokenUrl); 

    var token = JSON.parse(tokenResponse.getContentText())["token"]; 

    Logger.log(token); 

    } 

    catch(e) { 

    Logger.log(e); 

    } 

} 

: 나는 스크립트 편집기에서 "RUN"버튼을 누르면

  • 내가 올바른 응답을 얻을 수 있습니다.
  • 트리거 설정에 문제가 없습니다.
  • "muteHttpExceptions"를 설정하려고했는데 true : 오류가 발생했습니다.
  • External APIs Doc에 표시된 코드는 트리거 된 경우에도 정상입니다.

var url = 'https://gdata.youtube.com/feeds/api/videos?' + '= Q + 스케이트 개' +가 '& 시작 인덱스 = 21' + '& MAX-결과 = 10' + '& V = 2'; var response = UrlFetchApp.fetch (url); Logger.log (응답);


나는이 응용 프로그램을 매일 타이머를 설정하고 자동으로 보고서를 만들고 싶어. 나에게 아이디어를 좀주세요.


* ...이 포스팅은 지금까지 유래 내 첫 번째 게시물입니다, 나는 정상에서 영어 스피커가 아니에요, 그래서 당신은 위의 제 영어를 읽을 수없는 경우 미안 해요

답변

0

님,
함수로 트리거를 설정하려고합니다. 먼저 트리거를 삭제 한 다음이 함수를 코드에 추가하고 실행하십시오.

function setTrig(func){ 
    func=func||"triggerFetchTest"; 
    ScriptApp.newTrigger(func).timeBased().everyMinutes(5).create(); 
} 

이와 비슷한 상황이 정확히 설명을 기억하지 못합니다.

+0

해롤드, 답장을 보내 주셔서 감사합니다. ... 난 당신의 조언으로 프로그램 트리거를 설정 시도,하지만 작동하지 않았다 '기능 everyDayTrigger() { ScriptApp.newTrigger ("triggerFetchTest"). 시간 기반(). everyMinutes (1) .create (); }' "Transcript"를 선택했는데 "UrlFetchApp.fetch()"지점에서 실행중인 스크립트가 실패했음을 나타냅니다. 나는 다른 것을 알 수 없었다 ... –

0

주 기능을 doGet() 또는 doPost()로 설정하고 다음 설정을 사용하여 웹 앱으로 스크립트를 게시하십시오. 나와 함께 앱을 실행하고 아무나 익명으로 액세스 할 수있게하십시오. 그런 다음 웹 앱 URI에 GET 또는 POST 요청을 수행하는 다른 함수를 만듭니다.

트리거가 (AuthMode.NONE과 같은) 로그인 한 상태로 실행되지 않기 때문에 작동한다고 생각합니다. urlFetch를 수행 할 수 있어야합니다. 응용 프로그램에서 doGet () 또는 모든 작업이 완료된 doPost()가 있습니다.

예 : https://gist.github.com/jbutters/bece2fffe85080fe4314

0

Google 애플리케이션 스크립트 URL을 가져올 수와 트리거에 관련된 open issue입니다. 별표를 쓰고이 공개 문제에 대해 의견을 남기므로 Google에 강제로 조치를 취하십시오.

관련 문제