从Google API获取联系人列表,个人资料照片和电子邮件

时间:2015-07-05 06:45:42

标签: node.js email oauth gmail gmail-api

关于“使用Google登录”的各个组件存在一些问题,但我找不到任何引用当前API的问题(截至2015年7月)。

我的网络应用程序中有一个“使用Gmail登录”选项,我想要检索:

  • 我发送和接收的所有电子邮件(如果可能)
  • 我所有联系人的列表
  • 我所有联系人的个人资料图片列表(以及可能的其他信息,如位置,性别,年龄等)

现在,在我的oAuth登录中,我使用以下范围:

['profile', 'email','https://www.googleapis.com/auth/userinfo.profile', 'https://www.google.com/m8/feeds']

然后,一旦我有了oAuth令牌,我就进行以下API调用:

 https://www.google.com/m8/feeds/contacts/default/full?max-results=10000&alt=json&oauth_token={{token}}

这给我一份联系电子邮件和相关名称的列表,但没有图片(至少我能找到),没有其他关于联系人的信息。

我也希望能够下载所有用户发送/接收的电子邮件,我知道我必须通过IMAP这样做,但我只能找到需要用户名和密码的NodeJS实现。是否可以使用oAuth令牌?

理想情况下,我想通过一个oAuth调用完成所有操作,因为我正在构建一个电子邮件分析工具。

1 个答案:

答案 0 :(得分:2)

Gmail提供HTTP API您可以用来访问用户发送和接收的所有电子邮件。

Contacts API基本上只是用户手动为联系人输入的信息。大多数用户不会输入年龄和性别,如果用户将其视为传统的地址簿,联系人将只有位置。

如果您希望获得更像社交个人资料的内容,可以查看Google+ people.list API。您必须找到一种方法来关联联系人和Google+个人资料,但Google+个人资料更有可能拥有照片受众特征数据。