NodeJS Google Calendar API返回'缺少范围类型'错误

时间:2017-07-25 00:09:23

标签: node.js google-api google-calendar-api

当我使用google api for nodejs进行此调用时:

http://domain/home#id_token=token123&state=staticState

我从谷歌API中收到以下错误:

var google   = require('googleapis');
var calendar = google.calendar('v3');  

calendar.acl.insert({
  calendarId : "exampleCalID@gmail.com",
  auth: auth.client,
  role: "reader",
  scope: {
    type: "user",
    value: "exampleUser@gmail.com"
  }
}, function(err, response){
  if(err)
    console.log(err)
  console.log(response);
  return;
});

1 个答案:

答案 0 :(得分:2)

我明白了。此调用的角色和范围数据需要位于名为resource的对象中。 Line 128 of the source codethe documentation更明确,Code Golf不是语言特定的。所以函数调用应该如下所示:

var google   = require('googleapis');
var calendar = google.calendar('v3');  

calendar.acl.insert({
  calendarId : "exampleCalID@gmail.com",
  auth: auth.client,
  resource:{
    role: "reader",
    scope: {
      type: "user",
      value: "exampleUser@gmail.com"
    }
  }
}, function(err, response){
  if(err)
    console.log(err)
  console.log(response);
  return;
});