Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Django facebook-未获得最近更改的完整好友列表(应用程序范围的用户id可能为)_Django_Facebook_Facebook Graph Api - Fatal编程技术网

Django facebook-未获得最近更改的完整好友列表(应用程序范围的用户id可能为)

Django facebook-未获得最近更改的完整好友列表(应用程序范围的用户id可能为),django,facebook,facebook-graph-api,Django,Facebook,Facebook Graph Api,由于某种原因,当我这样做时,我正在处理的当前代码 https://graph.facebook.com/me?access_token=access_token (accesstoken from callback response) 它返回的id是:一些不是我真正的facebook用户id的数字。它还提供以下链接: https://www.facebook.com/app_scoped_user_id/<number> https://www.facebook.com/app

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

https://graph.facebook.com/me?access_token=access_token  (accesstoken from callback response)
它返回的id是:一些不是我真正的facebook用户id的数字。它还提供以下链接:

https://www.facebook.com/app_scoped_user_id/<number>
https://www.facebook.com/app_scoped_user_id/
如果我使用facebook访问令牌工具中的访问令牌,它将返回我的实际用户id

此外,我记得,我开发的旧应用程序只返回实际的用户ID,而没有得到这里发生的事情

关于朋友:


使用访问令牌工具中的访问令牌,我将获得完整的朋友列表。但使用应用程序中的代币,我只能得到一个朋友(我最近添加的)。无法获取发生的情况。

从2014年4月30日起,应用程序只能获取使用该应用程序的朋友列表,您必须请求用户\u friends权限。此外,2014年4月30日之前从未登录过您的应用程序的用户将获得一个应用程序范围的id,而不是他们真正的facebook id。

Fosco和CBroe是正确的。您只能获取已使用该应用程序的朋友。在Facebook的Graph API的v1.0到v2.0版本中提到了它。这事发生在4月30日

/me/friends
返回同时使用您的应用程序的用户朋友

在v2.0中,friends API端点返回也在使用你的应用程序的人的朋友列表。在v1.0中,响应包括一个人的所有朋友

应用程序需要访问非应用程序好友的两个关键用例:标记和邀请。在v2.0中,我们添加了和以支持这些流

当一个人使用Facebook登录的v2.0登录后,调用/v1.0/me/friends和/v2.0/me/friends`都将导致v2.0行为-这两个调用都将返回该人的朋友集,他们也使用该应用程序

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


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

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

如果您已经在v1.0上运行应用程序,那么2015年4月将完全弃用v1.0的beaware

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


我希望知识渊博的各方能对现在使用v2.0的FB集成的“社会性”部分有所了解?我正处于开发的早期阶段,现在我想我可能会完全抛弃FB,但以防万一有什么我不知道的地方。

是的,我已经设置了“用户朋友”权限范围。但是,使用Graph API v2,好友列表中仍然只有一个人(在过去两天中添加了他),您将只获得使用您的应用程序的用户的好友。对于返回的格式类似的链接,您能做些什么?每当我尝试访问该链接时,它都会出现一个未找到的错误。你认为什么是有效的用例,它不能通过
taggable
和/或
invitable
API来实现?绝对同意Facebook只是在应用程序开发者的错误方向上做了一个重大转变。现在只有超级流行的应用程序才能使用好友查找功能;这些应用程序甚至可能不需要Facebook。这很奇怪,因为他们刚刚引入了允许用户选择他们愿意接受的权限的功能;标题截图显示用户拒绝朋友访问。但是,如果用户授予权限,它甚至不会工作。他们从一切都变成了零,甚至没有达到让用户选择的合理中间点。在我看来,什么都没有。现在你只限于一个人,你只能获取用户的数据,没有其他东西,没有社交的东西。这很悲哀。开放应用和开放数据平台使FB不同于其他社交网络和friendster和myspace等老牌社交网站。现在,当越来越多的人说FB正在失去对青少年新注册的吸引力时,情况就倒退了。这实际上是同一个问题,尤其是,这可能意味着这个问题可能无法解决;从对该问题的回答中可以看出:“在Graph API的v2.0中,调用
/me/friends
会返回同样使用该应用程序的人的朋友……在其他情况下,应用程序不再能够检索用户朋友的完整列表(仅限于那些专门使用该应用程序的朋友)