gpt4 book ai didi

google-apps-script - 如何通过 UrlFetchApp.fetch 正确使用谷歌网址缩短器 api?

转载 作者:行者123 更新时间:2023-12-03 21:57:22 25 4
gpt4 key购买 nike

我花了很多时间阅读谷歌手册和其他资源,但在尝试使用此脚本获取短网址时没有发现我做错了什么:

function test_short_link() {
var apiKey, post_url, options, result;
post_url = "https://www.googleapis.com/urlshortener/v1/url";
apiKey = 'xxx';//here is real apiKey
post_url += '?key=' + apiKey;
var options =
{ 'method':'post',
'headers' : {'Content-Type' : 'application/json'},
"resource": {"longUrl": "https://google.com/"},
'muteHttpExceptions': true
}
result = UrlFetchApp.fetch(post_url, options);
Logger.log(result);
}

我做了各种修改,但它返回:
{
"error": {
"errors": [
{
"domain": "global",
"reason": "required",
"message": "Required",
"locationType": "parameter",
"location": "resource.longUrl"
}
],
"code": 400,
"message": "Required"
}
}

它让我发疯!
请帮忙!这段代码有什么问题?

最佳答案

您将需要修改此代码,因为它对 longUrl 进行硬编码并且不进行错误检查。一些重要的部分是 API 选项在 UrlFetchApp 选项对象的有效负载中发送,并且您需要在 header 中传递当前用户的 OAuth token 。

function ShortenUrl(){
var url = "https://www.googleapis.com/urlshortener/v1/url"

var payload = {"longUrl":"www.google.com"};

var parameters = { method : 'post',
headers : {'Authorization': 'Bearer '+ScriptApp.getOAuthToken()},
payload:JSON.stringify(payload),
contentType:'application/json',
muteHttpExceptions:true};

var response = UrlFetchApp.fetch(url, parameters);
Logger.log(response);

}

关于google-apps-script - 如何通过 UrlFetchApp.fetch 正确使用谷歌网址缩短器 api?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28858592/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com