Ошибка от UrlFetchApp при передаче короткого URL - PullRequest
0 голосов
/ 12 октября 2018

Облицовка ниже Исключение при вызове получения запроса с использованием UrlFetchApp.fetch.

Исключение: запрос не выполнен для https://shorturl.com (myshorturl) , возвращен код 302

Я не получаю ошибку, когда длина longurl равна 5606 длины.Я получаю сообщение об ошибке, когда длина longurl превышает 5609.

 var url = shortenUrl(longurl);
 Logger.log("URL:" + url);
 var response = UrlFetchApp.fetch(url, {
     "method": "get",followRedirects: true
 });
 Logger.log("Response" + response.getContentText())


function shortenUrl(longURL) {

var url = "https://firebasedynamiclinks.googleapis.com/v1/shortLinks?key=mykey";

var payload = {
    "dynamicLinkInfo": {
        "dynamicLinkDomain": "mypage.page.link",
        "link": longURL,
        "iosInfo": {
            "iosBundleId": "mybundleId"
        }
    }
};

var parameters = {
    method: 'post',
    payload: JSON.stringify(payload),
    contentType: 'application/json',
    muteHttpExceptions: true
};
var response = UrlFetchApp.fetch(url, parameters);
var myArr = JSON.parse(response);
var shortLink = myArr['shortLink'];
return shortLink;
}

1 Ответ

0 голосов
/ 12 октября 2018

ShortUrl будет перенаправлять на другой URL.302 Found код состояния информирует клиента о перенаправлении и предоставляет URL-адрес перенаправления.Попробуйте дополнительно установить следующий параметр:

followRedirects: true,    
muteHttpExceptions: true

РЕДАКТИРОВАТЬ:
Исходя из новой информации, что длина longUrl превышает 5000 символов, обратите внимание, что вызовы UrlFetch трудныограничения на длину URL, которая в настоящее время составляет 2 КБ / вызов.Если принять 1 байт на символ URL, максимальная объявленная приемлемая длина URL составляет около 2048 символов.

Ссылки:

...