1

我构建了一个网络应用程序,该应用程序使用与我自己的 Google 帐户相关联的服务帐户。我们使用 Google Apps,因此我的 Google 帐户是域的一部分。我们有一个共享联系人的服务器,因此我们所有的客户都可以作为每个人的联系人。在我的通讯录中,这个组被称为“目录”。

该应用程序使用 Google Api PHP 客户端从 Google 日历中检索事件。它还检索与会者,包括这些与会者的所有详细信息。但如果与会者不在我们的域内,它只会检索电子邮件地址。我还想获得该与会者的姓名。

这些名字在我的目录组中的联系人中。当我创建一个活动并邀请客人时,我可以检索这些联系人,它会显示姓名和邮件地址。但是当通过 API 检索与会者时,它不会显示这些名称。

这是 API 的限制吗?有解决方案吗?

我不想将 Contacts api 与非服务帐户一起使用,因为我不想每次都授予权限。据我所知,无法将 Contacts api 与服务帐户一起使用。

4

1 回答 1

1

您是正确的,服务帐户不能与联系人 API 一起使用,但是您不必每次使用它时都对其进行授权。您可以使用两条腿的 OAuth 1.0a 而不是 2.0 提供域范围的委派。请参阅https://developers.google.com/google-apps/contacts/v3/index#authorizing_requests_to_the_+wzxhzdk8+_servicehttps://developers.google.com/accounts/docs/OAuth#GoogleAppsOAuth

根据您的设置,您还可以将三足 OAuth 2.0 流用于单个管理员帐户并保存刷新令牌。这将允许您重新使用该授权,而无需再次明确许可。

于 2012-12-20T22:09:04.503 回答