在所有Gmail联系人组中获取所有电子邮件



我正在尝试使用JS库中获取用户联系人的所有电子邮件。

设置

1。)使用

初始化gapi client
gapi.client.init({
      apiKey: config['google']['apiKey'],
      discoveryDocs:
     ["https://www.googleapis.com/discovery/v1/apis/people/v1/rest"],
      clientId: config['google']['appId'],
      scope: "https://www.googleapis.com/auth/contacts.readonly"
})

2。)用户授予许可后,我尝试获取联系方式

gapi.client.people.people.connections.list({
         'resourceName': 'people/me',
         'pageSize': 500,
         'personFields': 'names,emailAddresses'
       }).then((response) => {
         let connections = response.result.connections;
         console.warn(connections);
})

3。)从步骤2开始,我得到零连接

但是,当我执行

gapi.client.people.contactGroups.list()

我得到以下响应

{
  "contactGroups": [
    {
      "resourceName": "contactGroups/all",
      "groupType": "SYSTEM_CONTACT_GROUP",
      "name": "all",
      "formattedName": "All Contacts",
      "memberCount": 13
    },
    ...
  ],
  "totalItems": 9,
  "nextSyncToken": "EJjRiq3lnNYC"
}

从响应中,我可以看到在contactGroups/all组中,我有13个联系人,在我的帐户中, i 可以看到相同数量的联系人。

那么,使用JS库中所有联系人组中所有联系人的合适方法是什么?

我尝试使用gapi.client.people.people.connections.list并成功获得了200响应。我也没有得到平等的值。

使用gapi.client.people.people.connections.list,这是响应:

....  
],  
 "nextSyncToken": "^***",  
  "totalPeople": 19,  
  "totalItems": 19  
}

gapi.client.people.contactGroups.list()中,

{
  "resourceName": "contactGroups/all",
  "groupType": "SYSTEM_CONTACT_GROUP",
  "name": "all",
  "formattedName": "All Contacts",
  "memberCount": 155
},

注意到people.connections.list仅提供认证的用户联系人与任何连接的配置文件合并的列表。而contactGroups.list列出了身份验证的用户拥有的所有联系人组。接触组的成员没有填充。

最新更新