Я пытаюсь получить доступ к Pingdom API в Google Apps сценарий следующий этого примера: https://developers.google.com/apps-script/external_apisНеожиданная ошибка UrlFetchApp.fetch в Google Apps сценарий
query = 'credits';
var username = 'foo';
var password = 'bar';
var credentials = username+':'+password;
var url = 'https://'+credentials+'@api.pingdom.com/api/2.0/'+encodeURIComponent(query);
var headers = {
"App-Key": "abcd",
};
var options = {
"method": "get",
"headers": headers,
'validateHttpsCertificates':false
};
Logger.log(url);
var response = UrlFetchApp.fetch(url);
выполнения этого кода порывает с ошибкой ниже:
Unexpected error: https://foo:[email protected]/api/2.0/credits (line 17, file "Code") Dismiss
Если я копирую/вставляю вышеуказанный URL-адрес в браузер, он работает (т.е. я получаю «Отсутствующий ключ приложения» из API-интерфейса pingdom, который подтверждает правильность ввода имени пользователя и пароля, иначе вы получите Ошибка недопустимых учетных данных). Я пробовал с encodeURIComponent
на credentials
, и я получаю ту же ошибку. 'muteHttpExceptions':true
тоже не помогает.
Любая идея, что может вызвать ошибку?
выпуск поднял (https://code.google.com/p/google-apps-script-issues/issues/detail?id=2859). К сожалению, реализация Pingdom'ом «HTTP» Basic кажется плохим: тестирование с завиванием, когда учетные данные предоставлены в «URL», работает, когда они предоставляются через заголовок «Авторизация», «API» возвращает «Пользователь» credentials missing' error (поэтому, когда я сосать с помощью скрипта Google Apps, поскольку я не могу использовать учетные данные в 'URL'). – Max