我正在尝试使用 DNOA 为我的应用程序提供 OpenId 支持,以便离开我迄今为止一直使用的 Janrain 解决方案。问题是,到目前为止,我拥有的用户拥有基于个人资料的标识符(https://www.google.com/profiles/11223344556677...),而 DNOA 检索到的标识符的形式为https://www.google.com/accounts/o8/id?id=xxxxxyyyyyafgsdgfsdhg.
如何检索个人资料信息?通过属性交换?以及哪个属性?或者还有其他的API吗?我看到登录页面有一个谷歌提供商和一个不同的谷歌个人资料提供商,所以这里有人有答案......:)
Update:谷歌个人资料的端点是(https://www.google.com/profiles/)
所以......现在的问题是如何获取谷歌个人资料ID号
谷歌个人资料 ID 号是通过“http://schemas.openid.net/ax/api/user_id”属性检索的。将其设置为必需的
在DNOA中,
var fetch = new FetchRequest();
fetch.Attributes.AddRequired("http://axschema.org/contact/country/home");
fetch.Attributes.AddRequired("http://axschema.org/contact/email");
fetch.Attributes.AddRequired("http://axschema.org/namePerson/first");
fetch.Attributes.AddRequired("http://axschema.org/namePerson/last");
fetch.Attributes.AddRequired("http://axschema.org/pref/language");
fetch.Attributes.AddRequired("http://schemas.openid.net/ax/api/user_id");
有趣的是,如果我省略其中一些属性,我就无法获取 api/user_id。
无法弄清楚那部分,但我现在并不关心。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)