不受支持的获取请求 - Facebook广告API与Facebook-PHP-Ads-SDK

时间:2017-08-22 12:13:03

标签: php facebook codeigniter facebook-graph-api facebook-ads-api

当我尝试使用Facebook营销API时,我总是得到错误:

  

不支持的获取请求

我在CodeIgniter中安装了API v2.10的最新版本,这是同一版本中的测试应用程序,一个永不过期的扩展新的长期访问令牌,我使用' act _'在account_id号之前,但它不起作用。该应用已获准用于基本访问级别。

这是我的代码(摘自我得到的https://developers.facebook.com/apps/MY_APP_ID/marketing-api/示例代码):

$api = Api::init($app_id, $app_secret, $access_token);
$api->setLogger(new CurlLogger());

$fields = array(
    'account_id',
    'campaign_group_id',
    'campaign_group_name',
    'reach',
    'cost_per_result',
    'spend',
    'impressions',
    'total_actions',
    'clicks',
    'results',
    'actions:like',
    'actions:post_engagement',
);
$params = array(
    'time_range' => array('since' => '2017-08-09','until' => '2017-08-16'),
    'filtering' => array(),
    'level' => 'campaign',
    'breakdowns' => array('days_1'),
);
echo json_encode((new AdAccount($account_id))->getInsights(
    $fields,
    $params
)->getResponse()->getContent(), JSON_PRETTY_PRINT);

我已经在StackOverflow中阅读了之前的文章:

1 个答案:

答案 0 :(得分:0)

我没有看到基于您的网址的示例代码(使用我的应用ID替换),但是当我运行您的代码时,我没有得到不支持的获取错误 - 相反,我得到:

致命错误:未捕获的FacebookAds \ Http \ Exception \ AuthorizationException:(#100)细分[0]

当我评论'故障'时,我得到:

PHP致命错误:未捕获的FacebookAds \ Http \ Exception \ AuthorizationException:(#100)结果对字段param无效。请查看https://developers.facebook.com/docs/marketing-api/reference/ads-insights/获取所有有效值

当我注释掉所有无效字段时,代码可以正常工作。