问题描述
嘿,Stackoverflow伙伴们!
我一直在尝试使用bit.ly的api为我的Google表格编写自动化程序,以缩短我的大量链接。目前,我正处于基本阶段,并尝试记录api返回给我的内容。你们可以帮忙看看代码有什么问题吗?我希望200可以退还给我,但它仍然会禁止我返回403。
var form =
{"long_url": "https://dev.bitly.com","domain": "bit.ly","group_guid": "MY GROUP ID" };
var option = {'header':'Authorization: Bearer{MY TOKEN}','method' : 'post','contentType': 'application/json','payload' : JSON.stringify(form)
};
var response = UrlFetchApp.fetch('https://api-ssl.bitly.com/v4/shorten',option);
Logger.log (response);
}
P.S。我试图通过添加标题(成功)和自定义链接(在bit.ly/之后短半//)来进一步扩展代码。第二部分继续向我返回404。还是应该改用Post / custom_bitlinks?
这是我当前的代码:
function bitlyori (i,title){
var form = {
"group_guid": "MINE","long_url": i,"title" : title
};
const MY_TOKEN = "MINE";
const option = {
headers: { Authorization: `Bearer ${MY_TOKEN}` },method: 'post',contentType: 'application/json',payload: JSON.stringify(form),};
var result = UrlFetchApp.fetch('https://api-ssl.bitly.com/v4/bitlinks',option);
return (JSON.parse(result.getContentText()));
}
function bitly(url,title,custom) {
var temp = bitlyori(url,title);
var form_2 = {
"custom_bitlinks": [temp],};
const MY_TOKEN = "MINE";
const option_2 = {
headers: { Authorization: `Bearer ${MY_TOKEN}` },method: 'patch',payload: form_2};
var temp_link = 'https://api-ssl.bitly.com/v4/bitlinks/'+ JSON.stringify(temp)["id"];
var result_2 = UrlFetchApp.fetch(temp_link,option_2);
return (JSON.parse(result_2.getContentText()));
}
解决方法
标题应该是在"headers"
内具有键options
的对象:
const MY_TOKEN = "dfjkgsa";
const option = {
headers: { Authorization: `Bearer ${MY_TOKEN}` },method: 'post',contentType: 'application/json',payload: JSON.stringify(form),};