2

用户成功登录 facebook 应用程序。但是,该应用程序无法提取用户的朋友信息。它只能返回一位之前允许该应用获取她信息的朋友的信息。

我正在使用 curl 和访问令牌通过应用程序访问我朋友的 Facebook 数据。我正在本地开发我的应用程序。它适用于我以前拥有的那些帐户,但不适用于新用户。是什么原因造成的?

那是因为我现在正在本地主机上开发吗?如果是,为什么它适用于我拥有的几个帐户,而不适用于也允许我的应用程序的其他用户?我还尝试使用我拥有的访问令牌访问朋友数据,但无法访问开发人员网站上的任何数据。

$uri ="https://graph.facebook.com/".$friend_id."/books?access_token=".$params['access_token'];
$temp = json_decode(get_data($uri), true);
4

1 回答 1

2

在 localhost 上开发会导致 Facebook 出现问题。您将无法在 Facebook 上授权您的应用。

如果 Facebook Graph 发生任何有趣的事情,请确保您在“基本”权限选项卡中列出的同一服务器/URL 上进行开发。否则事情可能无法正常工作。


但是您的回答更恰当地与权限有关:以前的“朋友”已授予应用程序获取数据的权限。因此,即使以其他用户身份连接(甚至未连接),您也可以获取他们的数据。但是其他用户没有给权限,所以你无法获取数据。如果数据是“公开的”,则不需要,但如果数据不被视为公开,则需要它们。

检查您是否具有查询朋友数据的正确扩展权限 - 您可以要求朋友 A 授权从朋友 B 获取一些数据。在这种情况下,一位朋友授予您访问他们自己数据的权限,但请检查您可能需要哪些其他权限从未授权该应用程序的朋友那里获取详细信息 - 在某些情况下,不可能获取所有内容。

https://developers.facebook.com/docs/authentication/permissions/

于 2012-05-01T00:49:39.027 回答