提问者:小点点

Facebook - 未获得包含最近更改的完整好友列表(应用范围的用户 ID 可能是) [重复]


由于某种原因,当我这样做时,我正在处理的当前代码

https://graph.facebook.com/me?access_token=access_token  (accesstoken from callback response)

它返回ID:一些号码,这不是我真正的脸书用户ID。它还提供链接作为:

https://www.facebook.com/app_scoped_user_id/<number>

如果我使用来自facebook访问令牌工具的访问令牌,它将返回我的实际用户id。

此外,我记得,我开发的旧应用程序只返回实际的用户ID,而不知道这里发生了什么。

关于朋友:

使用访问令牌工具中的访问令牌,我获得了完整的朋友列表。但是使用应用程序中的令牌,我只得到了一个朋友(我最近添加了)。不明白发生了什么。


共3个答案

匿名用户

自从我昨晚意识到这些变化后,我已经对哪些是可访问的进行了相当广泛的测试。即使你得到了用户的朋友,你也将无法再检索用户朋友的有用信息。你将无法访问朋友的相册和照片,所以访问可标记的朋友肯定没有用,因为你的应用程序不再“像用户一样行事”。你还应该注意到一些FQL表在v2.0版本中消失了,即location_posts(我打赌签入也是如此)。一些字段也被“空”掉了,比如mutual_friends_count。你需要测试所有内容,以确保更改了什么,因为许多差异没有记录在案。

如果您已经有在v1.0上运行的应用程序,请注意v1.0将在2015年4月完全弃用。

虽然我知道FB希望取消整个模拟以保护用户隐私,但它选择完全关闭许多应用程序开发人员选择与Facebook集成的原因来实现这一点,因为他们可以在用户感兴趣的应用程序中利用Facebook的数据。对于第三方应用程序来说,它对我来说只不过是一个免费的OAuth服务,因为据我所知,社交方面基本上已经不复存在了。

我希望知识渊博的各方能够对2.0版的FB集成的“社交”问题有所了解?我正处于发展的早期阶段,现在我想我可能会完全抛弃FB,但只是为了以防万一,我还不知道外面有什么。

匿名用户

Fosco和CBroe是正确的。你只能获得已经使用该应用程序的朋友。在Graph API的Facebook从v1.0升级到v2.0的文档中提到了这一点。这件事发生在4月30日。

/我/朋友返回也在使用您的应用程序的用户朋友

在2.0版中,friends APIendpoint返回也在使用您的应用程序的人的朋友列表。在1.0版中,响应包括一个人的所有朋友。

应用程序需要访问非应用程序好友的两个关键用例:标记和邀请。在2.0版中,我们添加了Taggable Friends API和Invitable Friend API来支持这些流。

当一个人使用2.0版Facebook登录后,拨打/v1.0/me/friends和/v2.0/me/fiends`都会导致2.0版的行为,这两个电话都会返回该人的朋友集,这些朋友也使用该应用程序。

因此,这意味着如果您需要完整的列表,您只剩下< code >可标记的和< code >可邀请的 API。不幸的是,< code>Invitable仅适用于FB Canvas游戏,而< code > taggabable 需要经过FB的审查,然后才能进行测试,这可能需要1-2周的时间,并且您需要提供关于您的应用程序的信息以及您为什么需要这些功能的理由。即使您能够访问< code>Taggable API,您也只能获得用户的姓名和pic。

FB摧毁了一切。依赖这些关键功能的开发人员(像我一样)已经破产了。也许(又一个)迹象表明没有人应该依赖FB?我想听听大家对此的看法。

匿名用户

自 2014 年 4 月 30 日起,应用只能获取也使用该应用的好友列表,您必须请求user_friends权限。此外,在 2014 年 4 月 30 日之前从未登录过您的应用的用户将获得app_scoped_id,而不是其真实的 Facebook ID。