我正在美国假期使用这个谷歌日历提要...
它现在返回Forbidden Error 403.我假设这与v2今天关闭有关:https://developers.google.com/google-apps/calendar/v2/developers_guide_protocol
我无法找到如何使用v3获取此Feed。有谁知道吗?
更新:我似乎没有使用上面的网址,我实际上正在使用此网址:https://www.google.com/calendar/feeds/usa__en%40holiday.calendar.google.com/public/basic
它似乎有效。该错误似乎与" fullcalendar"我正在使用的jQuery插件。它正在使用此URL工作并将其转换为我发布的不起作用的初始URL。我将进一步调查,看看fullcalendar是否有补丁或新版本。
答案 0 :(得分:2)
要使用v3,只需在https://console.developers.google.com注册开发人员密钥,然后执行以下操作:
GET https://www.googleapis.com/calendar/v3/calendars/usa__en%40holiday.calendar.google.com/events?key={YOUR_API_KEY}
答案 1 :(得分:2)
我今天遇到了同样的问题。我的客户端现在已经使用了fullcalendar一段时间了。问题似乎是谷歌关闭了API(v1,v2)
http://googleappsupdates.blogspot.ca/2014/06/calendar-gdata-api-google-calendar.html
我一直在努力使它与v3兼容。我上传了您可能需要的文件:
http://dev.radicalwerks.com/RadicalCalendar/rwCal/fullcalendar.js
和
http://dev.radicalwerks.com/RadicalCalendar/rwCal/gcal.js
在这里你可以看到工作的例子:
http://dev.radicalwerks.com/RadicalCalendar/my_fgcalendar.html
您需要执行几个步骤才能启用API并使其正常运行。
首先创建一个客户端ID并从google的开发者控制台获取密钥:
https://console.developers.google.com/project
为了做到这一点,创建项目,转到API和API下的凭据;验证等。获取客户端ID后,请将AUTHORIZED REDIRECT URIS textarea保留为空白。在JAVASCRIPT ORIGINS下添加您需要运行API的域(您可以使用多个域,每行添加一个)。你可能知道所有这些,但可以帮助那些不清楚它是如何工作的人。
获得客户端ID和密钥后,必须将它们添加到fullcalendar.js文件中的变量中。他们是最重要的:
var clientId
var apiKey
保留范围值。最后,您需要获取日历ID(位于日历设置/日历详细信息/日历地址下的XML徽章旁边。您必须将其添加到我们通常用于添加网址的对象中。您不会我需要添加一个名为" calendarId"的新属性。如果你查看http://dev.radicalwerks.com/RadicalCalendar/my_fgcalendar.html下的实例,你可以看到我是如何添加我的。
您需要通过添加头部来加载API:
<script src="https://apis.google.com/js/client.js"></script>
我在这两个文件中添加的所有内容都在评论之间:/* New update by Yared */
我必须改进代码,它只是一个快速解决方案,使其工作。现在是时候睡觉:)我很快就会更新代码。基本上,所以你知道,如果检测到属性CalendarID,我打断了AJAX调用,然后我使用API v3发出请求,并根据新格式调整事件对象。
我想我没有遗漏任何东西。我希望所有这些都有所帮助。
答案 2 :(得分:0)