目前,我正在尝试检索所有用户的联系信息,以及检索他们唯一的用户ID。
我们的应用程序需要利用一个用户谷歌联系人和用户将登录使用谷歌。因此,我们需要一些方法来识别每个唯一的用户(最有可能是由google提供的唯一用户id )
只有使用google contacts API才能做到这一点吗?
我检索访问令牌的初始调用是:
但是,我不相信从该调用返回的访问令牌具有任何关于用户ID的信息,并且也不提供从Google+ Api检索用户ID的权限。
有没有什么办法可以从google contacts API中获得唯一的用户ID?有获取用户联系人的用户id的示例,但我需要获取实际的用户ID (即,我正在获取其联系人的用户)?
这是否需要另一个作用域,或者是否也可以通过使用contacts API来实现?
发布于 2014-07-25 19:44:04
您可以通过用户的电子邮件地址来识别用户,该地址是唯一的AFAIK。当您向google contacts api发出请求时,您将在xml中获得一个名为Id的字段,这是用户的电子邮件地址。
例如,您可以询问所有联系人,您会得到一个xml like this .The Id字段,这是您想要的,并且根据您使用的编程语言、库等,您可以使用现有权限获取它。例如,在C#和gdata中,您可以这样做(googleCredentials应该是您的对象):
var cr = new ContactsRequest(settings);
var feed = cr.GetGroups();
googleCredentials.Email = feed.AtomFeed.Id.Uri.Content;发布于 2015-08-01 03:28:37
注意:特殊的userEmail值default可以用来指代通过身份验证的用户。
来自documentation documentation。您可以尝试将关键字default作为userEmail。
https://stackoverflow.com/questions/17365166
复制相似问题