0

我正在开发一个 php 脚本,用于从 facebook 中的页面(不是用户)检索消息。我可以访问该页面(它是我的),所以如果我必须修改配置中的某些内容,我可以。

我在 Facebook 的图形 api 网页中尝试了 FQL 查询,它可以工作。我得到包含所有消息的文件。

但是每当我在我的 php 脚本中尝试它时,它都会失败。我在 localhost 服务器中尝试它并调用脚本:“localhost/testServer/phpScript.php”我不知道是否必须添加参数。

我检查了许多示例和教程,它们都很相似,但就我而言,它们不起作用。

我总是收到此消息的异常:

Fatal error: Uncaught Exception: 100: Requires user session thrown in C:\xampp\htdocs\testServer\base_facebook.php on line 1271

如果我将它包围在 try/catch 中并打印我得到的内容,它会告诉它是 getType() 的异常和 getResult() 的数组。

我的代码很简单:

<?php

require_once("facebook.php");

//Get Facebook SDK Object
$config = array(
  'appId'  => '*******',
  'secret' => '*******',
  'cookie' => true,
);

$facebook = new Facebook($config);

//$fql = "SELECT message FROM status WHERE uid = 169070991963 ORDER BY time DESC";
$fql = "SELECT message FROM status WHERE uid = 169070991963";

//Create Query
$param  =   array(
    'method'    => 'fql.query',
    'query'     => $fql,
    'access_token'=>'*******|******-*******',
    'ext_perm'   => "read_stream",
);
    $result = $facebook->api($param);
    print_r($result);
?>

我刚刚删除了我的 appId、secret 和 access_token。

我使用状态表阅读了有关 read_stream 权限的内容。但是添加 access_token 和 ext_perm 标签没有效果。我留下了网页的 uid,因为它是公开的,因此您可以自己测试代码。

如果我不能用 php fql 做这个查询,如果我能得到相同的结果,我使用普通的 api 没有问题。

我花了很多天做这个脚本,我完全迷失了这个问题。

4

0 回答 0