Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/274.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
Php 如何结交所有朋友';来自Facebook图形API的提要_Php_Facebook_Facebook Graph Api - Fatal编程技术网

Php 如何结交所有朋友';来自Facebook图形API的提要

Php 如何结交所有朋友';来自Facebook图形API的提要,php,facebook,facebook-graph-api,Php,Facebook,Facebook Graph Api,我在我的facebook应用程序上使用php sdk,并请求所需的扩展权限。 我可以通过api调用从使用我的应用程序的用户处获取所有状态更新 $statuses = $facebook->api('/me/statuses?limit=0'); 但是当我对这个用户的朋友使用相同的方法时 $friendStatuses = $facebook->api('/'.$user_id.'/statuses?limit=0'); 我得到了一个空白数组。我试图不使用“?limit=0”,但结果仍然相同 我也

我在我的facebook应用程序上使用php sdk,并请求所需的扩展权限。 我可以通过api调用从使用我的应用程序的用户处获取所有状态更新

$statuses = $facebook->api('/me/statuses?limit=0');
但是当我对这个用户的朋友使用相同的方法时

$friendStatuses = $facebook->api('/'.$user_id.'/statuses?limit=0');
我得到了一个空白数组。我试图不使用“?limit=0”,但结果仍然相同

我也试着用

$friendFeed = $facebook->api('/'.$user_id.'/feed?limit=0');
从那个用户那里得到了一些信息,但不是全部。即使我将“?limit=0”更改为“limit=1000”,但是我得到的提要大约是500个条目,但是用户肯定有更多的提要


我的工作目标是收集用户和朋友的状态并对其进行聚类。

获取用户朋友提要的正确方法是您使用的最后一个示例:

$friendFeed = $facebook->api("/{$user_id}/feed?limit=0");
如果您获得的是一些提要项,但不是所有预期的提要项,则可能是您没有正确的权限。read_stream权限无法查看非公开帖子,因此,请尝试再次检查您是否具有read_stream权限。您可以通过运行FQL查询进行检查:

SELECT read_stream FROM permissions WHERE uid = me()
我不能100%确定您将如何使用您正在使用的SDK实现这一点,但它可能是:

$readStream = $facebook->api("/method/fql.query?query=SELECT+read_stream+FROM+permissions+WHERE+uid+=+me()");
祝你好运


您可以阅读有关运行FQL查询的更多信息。
您可以阅读有关权限表的更多信息。
您可以阅读有关graph api的用户对象的更多信息


使用此选项,可以更快地计算您的好友数

可能相关:我尝试查询read_stream权限并获得“[read_stream]=>1”是否意味着我已经请求了适当的权限。版本说明:从2016年开始(Graph API v2.5),
limit=0
现在将返回0结果,而且
read\u stream
权限被
read\u posts
替换。我相信原始海报试图做的更多,而不仅仅是数数朋友。FQL已被弃用,因此不要使用FQL。
$num = 0;
$result = $facebook->api( array('method' => 'fql.query', 'query' => 'SELECT uid2 FROM friend WHERE uid1=me()') );
foreach($result as $photo){
$num++;
}