通过Google日历UI,用户可以将外部iCAL日历添加到他们的日历列表中。
通过日历列表检索该日历时,不包括日历 URL。此外,似乎无法将外部 iCal 日历添加到用户的日历列表中。
是这样吗?有没有办法以编程方式为谷歌日历用户订阅外部iCal提要?
日历 UI 在内部使用以下 URL 添加外部日历:
https://calendar.google.com/calendar/addcalendarfromurl
此 URL 通过 POST 或 GET 获取以下参数:
- curl:日历网址(网址编码)。
- cimp:UI 将此设置为 true,不确定它的作用。
- CPUB:真|假 - 公开日历
- secid:来自客户端的安全 ID(可能是会话 ID)。不指定此选项会带来 403 错误。
如果用户未登录日历,他们将被重定向到 Google 登录屏幕。如果我有办法生成 secid(也许是 OAUTH?),我可以添加一个链接以允许用户自动添加日历。
谷歌日历API似乎没有任何更新,具有导入.ics功能。自 2007 年以来一直记录了一张票证,但截至目前仍然没有任何解决方案。
我能找到的唯一选择是在用户的 Google 日历网络界面中手动导入.ics文件。将活动导入 Google 日历支持页面讨论了此问题。
第 2 步:将活动导入 Google 日历
导出活动后,您可以将活动导入 Google 日历。
- 在计算机上打开谷歌日历。注意:您只能从计算机导入,而不能从手机或平板电脑导入。
- 点击右上角的设置设置齿轮按钮>设置。
- 打开日历选项卡。
点击"我的日历"- 和"其他日历"部分之间的导入日历。
- 单击选择文件,然后选择导出的文件。文件应以"ics"或"csv"结尾
- 选择要将导入的事件添加到哪个日历。默认情况下,活动将导入到您的主日历中。
- 单击导入。
如果您使用的是 ZIP 文件,请在计算机上找到该文件并将其打开。你将看到每个日历的 ICS 文件。从 ZIP 文件中取出单个文件,然后分别导入每个 ICS 文件。
注意:如果您从 CSV 文件导入重复活动,则可能不会以这种方式显示重复活动,但它们会作为一系列一次性事件显示在您的日历上。