使用 Google 应用程序脚本 returns 403 发布到 Bitly api

Posting to Bitly api with Google App Script returns 403

嘿 Whosebug 的伙伴们!

我一直在尝试使用 bit.ly 中的 api 为我的 google 工作表编写自动化程序,以缩短我大量的 link。现在,我正处于基础阶段,正在尝试向我记录 api return 的内容。大家帮忙看看代码有什么问题吗?我期待 200 returning 返回给我,但它一直禁止我使用 returning 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。我尝试通过使用添加标题(成功)和自定义 link(bit.ly/ 之后的短半//)来进一步扩展代码。第二部分keep return me 404。还是应该用Post/custom_bitlinks代替?

这是我当前的代码:

function bitlyori (i, title){
var form = {
    "group_guid": "MINE",  
    "domain": "bit.ly",  
    "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 应该是一个 object,在 options:

里面有键 "headers"
const MY_TOKEN = "dfjkgsa";
const option = {
  headers: { Authorization: `Bearer ${MY_TOKEN}` },
  method: 'post',
  contentType: 'application/json',
  payload: JSON.stringify(form),
};

参见: