0

正如你在这张照片中看到的

在此处输入图像描述

  • 我的应用程序 (390068587730802) 有一个有效的长寿命访问令牌,具有以下权限:ads_management、manage_pages、read_insights、user_friends
  • 我可以使用 Graph API Explorer 在另一个可访问的应用程序 (50813163906) 上获取数据,
  • $facebook->getUser(); 确实返回我的用户 ID
  • 但是,我通过 PHP SDK 从同一个请求中得到 NULL。

我已经在 xampp 和 apache 服务器上进行了本地测试。我今天更新了 PHP SDK 以包含有关 offline_access 和长寿命令牌的最新更改。我已经阅读了数十篇帖子和 FB 文档。我很高兴阅读您认为会有所帮助的更多内容,但请注意,我的令牌是有效的、长期存在的,并且我已成功从图形 API 获取“/me”。所有这些都发生在 http 或 https 下。

更新Facebook:抱歉,出了点问题。我们正在努力尽快解决这个问题。

如下图所示,我已经对 CURL 选项进行了 var_dump,以验证正确的 access_token 和实际调用的 URL。此外,我可以将这些url直接复制到浏览器中并获得完整的数据返回!

在此处输入图像描述

如果在我的测试期间我创建了“两个活动会话” - 正如一些文档警告的那样 - 你如何测试呢?最重要的是,为什么相同的 FB 洞察查询会在 Graph API Explorer 中工作,但使用 PHP SDK 返回 null?

4

1 回答 1

3

事实证明,“since=30 days ago”给出了 400(错误请求)响应。此错误未显示在 CURL 错误中。仅通过

curl_getinfo($this -> ch,CURLINFO_HTTP_CODE);

当我改变

$period = "{$period} days ago";

$period = urlencode("{$period} days ago");
//or 
$period = strtotime("- {$period} days");

一切都通过 CURL 工作。

于 2013-11-18T17:57:58.450 回答