Google People API中Person对象的Metadata与resourceName是否存在关联
问题解答
二者关联关系
Person.Metadata.Sources[0].id和Person.resourceName存在明确的对应关系,但前提是你取的是Sources数组中type为CONTACT的条目ID:Person.resourceName的固定格式为people/{contact_id},其中的{contact_id}就是CONTACT类型source对应的id值。- 针对联系人类型数据,
resourceName不需要复杂计算,直接通过people/前缀拼接CONTACT类型source的id即可得到。
新旧接口数据关联可行性
你观察到的规律完全可以用来实现新旧数据关联:
旧版Google Contacts API的URL后缀字符串,就是对应联系人在新版People API中CONTACT类型source的id,你只需要把存储的旧后缀字符串拼接people/前缀,就能直接得到该联系人在新版API中的resourceName,可直接用于后续接口调用、数据匹配操作。
注意:建议不要直接取
Sources[0]的id,优先过滤Sources数组中type字段值为CONTACT的条目取对应id,避免当联系人关联了谷歌账号Profile等其他类型source时,因数组顺序变化导致匹配错误。
内容的提问来源于stack exchange,提问作者Leon
相关产品推荐
相关产品推荐

