Lo siento si esta es una pregunta simple, pero me preguntaba cómo podría devolver la URL redirigida de una página web usando las hojas de Google.
Ejemplo de código web de entrada = SNSKS21KK
He adjuntado el código a continuación:
function CHECKWEBSITE(webCode){ if (webCode.map){ return webCode.map(CHECKWEBSITE); } else { var url = 'https://www.torpedo7.co.nz/products/' + webCode; var redirectedUrl = ?; var options = { 'muteHttpExceptions': true, 'followRedirects': false }; var response = UrlFetchApp.fetch(url, options); var status = response.getResponseCode(); if (redirectedUrl.includes("discontinued") || status == 302) { return "Not Online"; } else if (status == 200 || status == 301){ return "Online"; } else { return "Not imported"; } } }Salida de redirección esperada = https://www.torpedo7.co.nz/products/SNSKS21KK/title/2022-es-force-fx-80-skis---m12-gw-f80-bindings
¡Gracias!
En su situación, ¿qué tal la siguiente modificación?
var url = 'https://www.torpedo7.co.nz/products/' + webCode; var redirectedUrl = ?; var options = { 'muteHttpExceptions': true, 'followRedirects': false }; var response = UrlFetchApp.fetch(url, options); var status = response.getResponseCode(); var url = 'https://www.torpedo7.co.nz/products/' + webCode; var options = { 'muteHttpExceptions': true, 'followRedirects': false }; var response = UrlFetchApp.fetch(url, options); var redirectedUrl = response.getAllHeaders().Location; var status = response.getResponseCode();redirectedUrl se recupera de la Location del encabezado de respuesta.webCode = SNSKS21KK , redirectedUrl es https://www.torpedo7.co.nz/products/SNSKS21KK/title/2022-es-force-fx-80-skis---m12-gw-f80-bindings y Online fue devuelto.