Ошибка тайм-аута UrlFetchApp.fetch через 1 мин в зависимости от среды - PullRequest
1 голос
/ 02 июля 2019

У меня есть скрипт приложения, который берет данные из электронной таблицы, отправляет их в API и печатает результаты на другом листе.Это приложение опубликовано на рынке, и некоторые пользователи, не многие получают ошибки тайм-аута около отметки 1 мин.Это значение не соответствует тайм-ауту в GAS квотах , который составляет около 5-6 минут.

Код одинаков для всех пользователей, данные, отправленные в запросе, не отображаютсяизменить поведение, и это происходит в отношении разных конечных точек (одного и того же API).

Единственное, что я могу видеть в журналах, это то, что UrlFetchApp.fetch генерирует исключение тайм-аута, но я больше не могу его отлаживать.

Этозапрос:

  try {
    response = UrlFetchApp.fetch(url, {
      'muteHttpExceptions': true, 
      'method': 'post', 
      'payload': params
    });
    if(isJson(response)) {
      json = JSON.parse(response);
      status = json.status;
    } else {
      if(response == '') {
        // api did not respond
        json = JSON.parse(mocked_response_with_error);
        status = json.status;
      } else {
        //rollback spreadsheet creation
        return;
      }
    }
  } catch(e) {
    console.error('User "'+ params['key'] + '" obtained the following exception in ' + service + ': '+ e);
    showException(e);
    return;
  }

Средство просмотра журналов для проекта показывает мне следующую ошибку:

"Пользователь" user_key "получил следующее исключение в [service]: Exception: Timeout: url "

Любые идеи о том, почему это происходит или что еще я мог бы проверить?Так как это происходит не в каждой среде, я не смог воспроизвести его в моей.

ETA: код представляет собой Apps Script в отличие от кода, разработанного / запущенного в App Engine .

...