Google Calendar API - 未定义的活动

时间:2016-04-30 07:25:21

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

所以,我忙于一个项目。我是node.js的新手,但不是javascript。我想使用Node添加日历事件。

这是我到目前为止所做的:



	var event = {
	  'summary': 'Dinner',
	  'location': 'Epic',
	  'description': 'Get Coding!',
	  'start': {
		'dateTime': '2016-04-30T18:30:00-19:30',
		'timeZone': 'Pacific/Auckland',
	  },
	  'end': {
		'dateTime': '2016-04-30T19:30:00-20:00',
		'timeZone': 'Pacific/Auckland',
	  },
	  'recurrence': [
		'RRULE:FREQ=DAILY;COUNT=2'
	  ],
	  'attendees': [
		{'email': 'lpage@example.com'},
		{'email': 'sbrin@example.com'},
	  ],
	  'reminders': {
		'useDefault': false,
		'overrides': [
		  {'method': 'email', 'minutes': 24 * 60},
		  {'method': 'popup', 'minutes': 10},
		],
	  },
	};
	
	calendar.events.insert({
	  auth: auth,
	  calendarId: 'primary',
	  resource: event,
	}, function(err, event) {
	  if (err) {
		console.log('There was an error contacting the Calendar service: ' + err);
		return;
	  }
	});
	  console.log('Event created: %s', event.htmlLink);

	function insertEvents(auth) {
		var calendar = google.calendar('v3');
		
	}




当我运行此文件时,我收到"创建的事件:未定义"从控制台。我已经尝试了多种方法来解决这个问题而没有运气。我带走了" .readonly"从日历上,我已经改变了#client; secret_secret"多次(新证书。)

编辑:

我发现我可以将数据输入谷歌日历,但时间有问题。但这是另一个问题。

现在,问题是,"为什么它未定义?"

3 个答案:

答案 0 :(得分:0)

您的console.log函数正在您的事件中查找未定义的htmlLink。使用谷歌提供的代码,您的代码将始终返回undefined。

只需在事件声明中添加以下行:

'htmlLink' : '/*your HTML Link*/',

您还可以将htmlLink替换为已定义的另一个变量,例如“summary”,这可能更符合您的需求。

现在它返回“Event Created:Dinner”

答案 1 :(得分:0)

尝试

console.log('Event created: %s', event.data.htmlLink);

代替

console.log('Event created: %s', event.htmlLink);

答案 2 :(得分:-1)

我们在哪里定义htmlLink?或者它是Nodejs的一部分。 我会重命名var事件。至少在未命名的函数中,它被函数参数隐藏。 你能单步吗?