2014-11-24 5 views
2

'www.mysite.com/mySecretKey1' перенаправляет 'www.othersite.com/mySecretKey2'Какой метод Google AppsScript используется для получения URL-адреса перенаправления?

в G.AppsScript:

var response = UrlFetchApp.fetch("https://www.mysite.com/mySecretKey1"); 
    var headerString = response.getAllHeaders().toSource(); 
    Logger.log(headerString); 
    //string 'www.othersite.com.my/SecretKey2' is not present in log. 

Как бы сценарий открыть адрес URL, который он перенаправляется (например, строка «www.othersite.com/mySecretKey2»)?

ОБНОВЛЕНИЕ: В более общем смысле, как скрипт обнаружит URL-адрес от response?

ответ

2

В UrlFetchApp есть встроенная поддержка, чтобы следить за перенаправлениями. Вы должны попытаться установить:

followRedirects = true 

В опциях предполагающей для UrlFetchApp. Нечто подобное:

var options = { 
    "followRedirects" : true 
}; 
var result = UrlFetchApp.getRequest("http://your-url", options); 
+2

URL-адрес первой или второй страницы по-прежнему отсутствует в 'response'. – user3645994

0

UPDATE: В целом, как бы сценарий открыть адрес URL от ответа?

парадоксально, вам нужно отключить перенаправления и не немых HttpExceptions, например, так:

var followedPost = UrlFetchApp.fetch(properUrl, {'followRedirects': false, 'muteHttpExceptions': false}); 
Logger.log(followedPost.getHeaders()['Location']); 

объекта, возвращаемый .getHeaders() будет содержать новое местоположение запрошенного ресурса. Получите доступ к этому новому местоположению с помощью новой .fetch().

Смежные вопросы