【问题标题】:How do I Insert Google Calendar Event using Google Api 3 for any user in the domain?如何使用 Google Api 3 为域中的任何用户插入 Google 日历事件?
【发布时间】:2015-01-30 14:16:32
【问题描述】:

我正在使用 Google Api v3(PHP 库)并希望将活动添加到我们 Google Apps 域中的用户日历中。我在 Google 开发者控制台中创建了一个客户端 ID,并在我们的 Google Apps 管理控制台的安全性下授予了对它的访问权限。但是,如果用户先前已授予对开发者帐户的访问权限,则该事件只会插入到用户的日历中。我不希望我们域中的每个用户都必须授予开发者帐户对其日历的访问权限。

在 API v3 下是否可以无缝地将事件添加到用户的日历中?

【问题讨论】:

    标签: php google-api google-calendar-api


    【解决方案1】:

    在 Google Apps 管理控制台中向您的服务帐户授予域范围的委派并不会使其访问每个人的日历。相反,它允许服务帐户模拟您域中的任何给定用户,然后以该用户的身份发出请求。

    在 PHP 客户端库中,您可以通过在您创建的 Google_AssertionCredentials 对象上设置 sub 字段来模拟用户。

    $auth->sub = $userEmail;
    

    我们没有显示日历 API 的完整示例,但 Drive API 文档包含 a sample,并且过程相同。

    【讨论】:

    • Eric,您是否有任何完整的示例显示此日历 API
    • 不,但如前所述,Drive API 示例几乎相同。
    • 感谢 Eric。我试过这样。但不能在不同的域用户电子邮件 ID 中工作
    • Eric,我在 DOMAIN1.COM 中的 API CONSOLE,最终用户在 DOMAIN2.COM 中。使用 test@domain1.com 工作正常,但使用 test2@domain2.com 不工作得到错误。请帮我解决这个问题
    • 您需要在要使用服务帐户的每个域中授予委派授权。
    猜你喜欢
    • 1970-01-01
    • 2017-05-22
    • 2017-02-19
    • 1970-01-01
    • 2015-09-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多