我使用以下代碼(發布在stackoverflow.com上)來縮短 Google App Script 中的 URL:
function ExpandURL(url) {
url = url.indexOf("https://") == 0 ? url : "https://" url; // Added
var response = UrlFetchApp.fetch(url, { followRedirects: false });
var longurl = decodeURIComponent(response.getHeaders()['Location']);
return longurl;
}
但是當我將它用于 ow.ly示例URL 時:
function test() {
Logger.log( ExpandURL("OWLYURL"))
}
我在日志視窗中收到以下訊息錯誤:
Exception: Address unavailable: OWLYURL
(請用https://ow.ly /d9AV30jRJWJ 替換 OWLYURL(不帶空格);因為當正文包含這樣的純 URL 時,我無法發布我的問題)
我嘗試過的許多其他 ow.ly URL 也會發生同樣的事情。
有沒有辦法解決這個問題?
uj5u.com熱心網友回復:
在您的問題中,https:// ow . ly /d9AV30jRJWJ使用了(包含空格是因為避免了 Stackoverflow 的錯誤。)。但是,我認為在這種情況下,它可能是http:// ow . ly /d9AV30jRJWJ。因為當我訪問時https:// ow . ly /d9AV30jRJWJ,沒有回傳任何回應。另一方面,當我訪問時http:// ow . ly /d9AV30jRJWJ,回傳博客頁面。如果我的理解是正確的,那么下面的修改呢?
修改后的腳本:
function ExpandURL(url) {
url = /https?:\/\//.test(url) ? url : "https://" url; // Modified
var response = UrlFetchApp.fetch(url, { followRedirects: false });
var longurl = decodeURIComponent(response.getHeaders()['Location']);
return longurl;
}
function test() {
Logger.log(ExpandURL("http:// ow . ly /d9AV30jRJWJ")) // When you test this, please modify ` ow . ly ` to `ow.ly`.
}
test運行時,回傳https://blog.leadquizzes.com/ubersuggest-find-profitable-keywords-with-neil-patels-free-seo-tool?platform=hootsuite。
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/479329.html
上一篇:如何將GoogleApps腳本專案中的CSS檔案應用于doPost()回傳的HTML檔案?
下一篇:在一個函式中組合范圍
