我正在尝试做什么: 使用javascript从我的网站向Google日历添加活动。
我不能做的事: 找一个好的教程/浏览/示例谷歌日历api。我已经能够在v1和v2 api之间来回找到所有文档,或者v3 api似乎不是基于客户端的。
对于那些好奇的人,我正在开发这个网站: http://infohost.nmt.edu/~bbean/banweb/index.php
答案 0 :(得分:57)
Google提供了一个出色的JS客户端库,可以与所有Google基于发现的API(例如Calendar API v3)配合使用。我编写了一个blog post,其中涵盖了设置JS客户端和授权用户的基础知识。
在应用程序中启用基本客户端后,您需要熟悉Calendar v3的具体细节才能编写应用程序。我建议两件事:
gapi.client
时自动建议方法名称。例如,开始输入gapi.client.calendar.events.
,您应该看到一组可能的完成(您需要insert
方法)。以下是将事件插入JS的示例:
var resource = {
"summary": "Appointment",
"location": "Somewhere",
"start": {
"dateTime": "2011-12-16T10:00:00.000-07:00"
},
"end": {
"dateTime": "2011-12-16T10:25:00.000-07:00"
}
};
var request = gapi.client.calendar.events.insert({
'calendarId': 'primary',
'resource': resource
});
request.execute(function(resp) {
console.log(resp);
});
希望这足以让你开始。
答案 1 :(得分:0)
这应该可以解决问题
//async function to handle data fetching
async function getData () {
//try catch block to handle promises and errors
try {
const calendarId = ''
const myKey = ''
//using await and fetch together as two standard ES6 client side features to extract the data
let apiCall = await fetch('https://www.googleapis.com/calendar/v3/calendars/' + calendarId+ '/events?key=' + myKey)
//response.json() is a method on the Response object that lets you extract a JSON object from the response
//response.json() returns a promise resolved to a JSON object
let apiResponse = await apiCall.json()
console.log(apiResponse)
} catch (error) {
console.log(error)
}
}
getData()