2016-08-22 63 views
-1

所以我用Facebook的图形API数据及ASP.NET

https://github.com/nickpinheiro/FacebookLoginASPnetWebForms/blob/master/

得到一些Facebook的数据出来,我有基本的设置运行。我想获得更多关于用户的数据(位置,教育,喜欢等),所以我去了FB开发人员部门,找到了这些字段并试图获取该信息。

该调用不会返回名称,区域设置,性别,ID,链接以外的任何内容。当我添加位置时,它不会返回该信息。我尝试了Graph API浏览器,它返回了位置信息。我尝试使用curl(URL来自Graph API调试器)并且能够获取返回的信息。我从ASP.NET尝试过,它不会返回相同的信息。 Curl做同样的事情(不会返回比基本名称,语言环境等更多的东西)。我比较了URL和除了token之外的所有内容都是相同的,所以不知道为什么信息没有被返回。

+1

_“和除了令牌一切都是相同的_调试他们以了解更多信息。 – CBroe

+0

如果令牌具有相同的权限,我将如何进行调试? –

+0

https://developers.facebook.com/tools/debug/accesstoken/ – CBroe

回答

-1

它可能使用旧版本的Facebook API。从版本2.x开始,它只为用户提供基本信息。当您需要更多(例如电子邮件,出生日期)时,您必须交换访问令牌以获取扩展访问令牌,然后再向API请求。

https://developers.facebook.com/docs/apps/changelog

最近我有同样的问题。几乎所有的图书馆都在使用旧的API,所以我最终创建了自己的API。但你可以检出https://github.com/facebook-csharp-sdk或安装它与NuGet https://www.nuget.org/packages/Facebook/

+0

扩展访问令牌指的是令牌在到期之前有效的时间。这与授予应用程序的权限无关;如果用户已经准许阅读他们的特定信息,那么你可以用短命令或扩展令牌来做到这一点,这完全没有区别。 – CBroe