如何使用google api从orgnization目录中检索所有联系人?

时间:2015-07-09 07:36:48

标签: google-api google-contacts google-directory-api google-shared-contacts

我想构建一个联系人自动填充用户界面,就像Gmail中的“收件人”联系人框一样。我没有发现Google提供此类自动完成服务,但我发现也许我可以检索所有联系人,

enter image description here

我找到了三个相关的apis

我应该使用哪种服务来获取此目录中的所有联系人?

1 个答案:

答案 0 :(得分:0)

您需要使用Contact API

这将要求您的应用程序使用 OAuth2 请求联系人。如果您需要了解OAuth2,我喜欢this tutorial

如何实施

您需要使用授权代码授权流程(在上面的教程中称为授权代码流程)。

基本上:在使用Google注册(仅限一次)您的网络应用程序(请求使用通讯录API)后,您需要向用户显示超链接。用户将单击并显示同意弹出窗口。

可能你已经在现代应用程序/游戏或网站上遇到过这种同意弹出窗口,要求提供奖励,例如" Foo想要访问你的个人资料信息"等。

一旦用户授予了您要使用的API的访问权限,您就会收到访问代码(这是暂时的)。现在使用HTTP请求,您将使用此代码来请求访问令牌

然后最后,使用此访问令牌,您可以调用Contacts API。

如何避免总是征求同意

如果您不想总是要求用户允许您的应用阅读联系人,则需要使用refresh token

Easy Path

我的第一个建议是尝试为您正在使用的语言找到 Google通讯录库。

如果它不存在,请尝试找一个 OAuth2 库:这将使您的生活更轻松,而不是自己实施所有流程。

此外,您可以使用现成的解决方案,例如CloudSponge.com:安装5分钟(以及支持多种编程语言和Google以外的其他地址簿来源的好处)。 免责声明:我为CloudSponge工作。