用户成功登录Facebook应用。但是,该应用程序无法提取用户的朋友信息。它只能返回之前允许该应用获取其信息的朋友的信息。
我正在使用curl和访问令牌通过应用访问我的朋友的脸书数据。我在本地开发我的应用程序。它适用于我以前的那些帐户,但它对新用户不起作用。可能导致什么?
是因为我现在正在开发本地主机吗?如果是的话,为什么它适用于我拥有的几个帐户,而不适用于同时授予我应用程序权限的其他用户?我还尝试使用访问令牌访问朋友数据,但无法访问开发者网站上的任何数据。
$uri ="https://graph.facebook.com/".$friend_id."/books?access_token=".$params['access_token'];
$temp = json_decode(get_data($uri), true);
答案 0 :(得分:2)
在localhost上开发会导致Facebook出现问题。您将无法在Facebook上授权您的应用。
如果Facebook图表发生任何有趣的事情,请确保您在“基本”权限选项卡中列出的同一服务器/网址上进行开发。否则事情可能无效。
但您的回答更恰当地与权限相关:之前的“朋友”已授予应用获取数据的权限。因此,即使作为另一个用户(甚至没有连接)连接,您也可以获取他们的数据。但是其他用户没有给予许可,因此无法获取数据。如果数据是“公共的”但不需要,则不需要将数据视为公共数据。
检查您是否具有查询朋友数据的正确扩展权限 - 您可以要求朋友A授权从朋友B获取某些数据。在这种情况下,一位朋友授予您自己数据的权限,但请检查您还有其他权限可能需要从未授权应用程序的朋友那里获取详细信息 - 在某些情况下,无法获得所有内容。
https://developers.facebook.com/docs/authentication/permissions/