在所有Gmail联系人组中收取所有电子邮件
问题描述:
我正尝试使用JS库从用户联系人中提取所有电子邮件。在所有Gmail联系人组中收取所有电子邮件
设置
1)使用
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初始化的gapi client
。 )从步骤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个联系人,并在我的帐户我可以看到相同数量的联系人。
那么,使用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
列出了经过身份验证的用户拥有的所有联系人组。 未填充联系人组的成员。
我正在检查airbnb的“导入联系人”功能,当我允许他们从联系人中获取所有电子邮件但是使用JS库时,我没有收到任何电子邮件。我想知道他们是如何做到的 – abhinavmsra