【问题标题】:Google Calendar API - Designed for?Google Calendar API - 专为?
【发布时间】:2017-02-08 11:21:31
【问题描述】:

我想使用 FullCalendar Javascript 实现一个 Google 日历 API。 在开始编码之前,我有一些问题要理解 Google Calendar API 的主要目的是什么。

如您所知,在创建和启用 API 之前有一些身份验证过程。 这意味着我作为所有者或开发人员想要使用 Google Calendar API,所以我得到了客户端/秘密/密钥字符串,这没关系。

我可以创建一个应用程序,我可以在其中“宣传”我的 Google 帐户日历公开,然后我可以显示该日历中的所有事件(牙医预约等)。

我还可以通过其他方式使用日历。例如:在我的应用程序中,我可以创建一个页面,用户可以在其中验证他们的谷歌帐户并查看他们的事件 已经创建。 但是,如果我的登录用户没有 Google 帐户怎么办。 Google 日历是否与已创建的 Google 帐户紧密关联?是否可以将 Google 日历严格用作 REST API? 我知道这可能是一个愚蠢的问题,但这是大多数 Google Calendar API 初学者都遇到的问题。

【问题讨论】:

    标签: google-api google-calendar-api


    【解决方案1】:

    从技术上讲,有两种方法可以访问 Google 日历上的日历。

    您的第一个选项是使用Oauth2 来验证您的用户。他们让您访问他们的谷歌日历,然后您可以将事件直接插入他们的日历。您还可以查看他们当前拥有的事件。如您所说,如果相关用户没有谷歌帐户,这将不起作用。

    您的第二个选择是使用称为service account 的东西。将服务帐户视为虚拟用户。它有自己的谷歌日历帐户减去网络视图。您可能会使用它来将事件存储在全局日历应用程序日历中。然后,当您想将用户添加到您邀请他们的事件时,您可以设置通知,他们应该收到一封电子邮件,他们将能够将事件添加到他们自己的个人日历中。对您来说,这可能会更好,因为它不需要您访问用户谷歌日历,唯一的缺点是您无法查看该用户当时是否有任何活动,因为您没有无法访问他们的帐户进行检查。

    我为您提供了几个链接,这些链接指向我几年前编写的一些教程,这些教程解释了 oauth2 和服务帐户之间的区别。

    【讨论】:

      【解决方案2】:

      Google 日历与用户相关联,这意味着 Google 用户。首先,要访问 API,您需要 GoogleAPIs 开发人员密钥。这需要一个谷歌帐户。然后,您需要 Google 帐户才能使用或测试 API。

      Google 日历与https://developers.google.com/google-apps/calendar/concepts/ 中所述的用户帐户相关联。需要注意的一点是,“事件”是 API 中的一个原子单元,而日历是一组事件。换句话说,Calendar API 中的日历不是我们想象的“今年的日历”那样的时间跨度,它是一组事件对象。在您描述的应用程序中,如果用户没有谷歌帐户,那么他们没有关联的日历。您必须将这些用户绑定到某种公共或共享日历。目前尚不清楚将日历 API 仅用作您描述的 REST API(没有实际或“经过验证的”用户帐户)是否符合条款和条件。除此之外,理论上可以将这样的服务用作 REST API 来满足您的需求。也许您可以尝试反转问题,使事件成为具有主日历的用户。现在可以将事件的位置视为 API 事件。其他(普通谷歌)用户可以在给定时间“参加”由该事件(=用户)创建的位置。您也可以应用相同的方法按位置反转问题。位置成为用户,事件成为 API 事件,参与者是普通用户。后一种方法通常用于企业预订房间、设备等资源。

      【讨论】:

        猜你喜欢
        • 2016-02-13
        • 1970-01-01
        • 2012-04-19
        • 1970-01-01
        • 2013-01-02
        • 2018-03-23
        • 2017-08-11
        • 2016-07-24
        • 1970-01-01
        相关资源
        最近更新 更多