CalendarApp.getAllCalendars()返回null数组

时间:2013-03-21 11:56:42

标签: google-apps-script

我正在调用CalendarApp.getAllCalendars() 通过客户端上的调用在服务器上

/*- server  code-*/
function getCalendars(){
 return CalendarApp.getAllCalendars();
}
/*-*/

/*-client code-*/
 google.script.run.withSuccessHandler(getCalendarsHandler).getCalendars();

getCalendarsHandler=function(cals){
 console.log(JSON.stringify(cals));
};
/*-*/

控制台显示...... [null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null]

getCalendarsHandler接收一个正确长度的数组(即我也可访问的日历数) 但该数组中的每个元素都为null, 谁能告诉我我做错了什么?

由于

那天晚些时候......

在进一步调查时,我似乎必须在将服务器传递给客户端之前在服务器上构建结构。我期待类似于gapi.client.calendar.calendarList.list();但看起来我必须建立自己的东西 - 就像......

function getCalendars()
{
 var cal,i,resp;
 resp=[];
 cal=CalendarApp.getAllCalendars();
 for(i=0;i<cal.length;i++)
 {
  resp[i]={
   "name":cal[i].getName(),
   "id":cal[i].getId()
    ...
  }
 }
 return resp;
}

1 个答案:

答案 0 :(得分:0)

那天晚些时候......

在进一步调查时,看起来我必须在将服务器传递给客户端之前在服务器上构建结构。我期待类似于gapi.client.calendar.calendarList.list();但看起来我必须建立自己的东西 - 比如......

function getCalendars()
{
 var cal,i,resp;
 resp=[];
 cal=CalendarApp.getAllCalendars();
 for(i=0;i<cal.length;i++)
 {
  resp[i]={
   "name":cal[i].getName(),
   "id":cal[i].getId()
    ...
  }
 }
 return resp;
}