bugfix> google-apps-script > 投稿

HTTPリクエストが失敗したときにコールバックを書きたいです。 UrlFetchApp.fetch()にチェーンするにはどうすればよいですか?以下のHTTPリクエストを参照してください。

// Make a GET request. UrlFetchApp.fetch('http://www.google.com/');

回答 1 件
  • fetch  関数は同期です。コールバックパラメーターを提供せず、promiseを返しません。

    UrlFetchApp.fetch(url, params) を介して例外をキャッチするアプローチが可能です。  関数。あなたは muteHttpExceptions を渡すことができます  パラメータを関数呼び出しのparamsロケーションに追加します。そうすれば、応答コードを自分で調べて適切に応答できます。ドキュメント:https://developers.google.com/apps-script/reference/url-fetch/url-fetch-app#fetchurl-params

    UrlFetchApp.fetch('http://www.google.com/', {muteHttpExceptions: true});
    
    

    muteHttpExceptions (Boolean) if this is set to true, the fetch will not throw an exception if the response code indicates failure, and will instead return the HTTPResponse (default: false)

    別の方法は、単純なtry/catchステートメントです。エラーを記録するか、適切に対応できると思います。

    try {
       UrlFetchApp.fetch('http://www.google.com/');
    }
    catch(e) {
       // e contains error response
    }
    
    

あなたの答え