如何从apps脚本中使用googleapis

时间:2014-02-21 22:07:20

标签: javascript oauth google-apps-script google-api google-calendar-api

我的意图:

我想从acl.list()调用Google Calendar的API google script 使用UrlFetchApp.fetch()函数。

问题:

我的Google脚本在运行时自带有oauth令牌。问题是UrlFetchApp.fetch()是一个单独的http请求,需要oauth令牌才能工作。

问题:

如何在该脚本中手动调用的http请求中重用我(已授权的)apps-script使用的令牌。可能吗?如果没有,那么如何为此请求生成令牌?

理由:

ContactsApp使用起来很愉快,但它还没有所需的ACL功能。

我的(不工作)代码:

function pleaseHelp() {
  var calId = "MY_CORRECT_CALENDAR_ID";
  var url = "https://www.googleapis.com/calendar/v3/calendars/" + calId + "/acl";
  var data = {
    "foo" : "foo data",
    "bar" : "data bar...",
  };
  var payload = JSON.stringify(data);
  var options = {
    "method" : "POST",
    "contentType" : "application/json",
    "payload" : payload
  };
  var response = UrlFetchApp.fetch(url, options);
  Logger.log(response);
}

给出异常:“401需要登录”显然......

提前感谢您的帮助。

2 个答案:

答案 0 :(得分:2)

答案 1 :(得分:1)

您可以将令牌附加到您正在进行的通话中。

例如: https://www.googleapis.com/calendar/v3/calendars/ {cal id} / acl? access_token ='yourtoken'