获取"参数无效" getReportsStats上没有任何理由的异常

时间:2014-12-29 16:11:44

标签: php facebook sdk facebook-php-sdk facebook-ads-api

任何人都可以帮我快速进行代码审核吗?

$fields = array(
    'campaign_id',
    'spend'
);
$params = array(
    'data_columns' => $fields,
    'time_interval' => array(
        'day_start' => array(
            'year' => 2011,
            'month' => 9,
            'day' => 1
        ),
        'day_stop' => array(
            'year' => 2011,
            'month' => 9,
            'day' => 10
        ),
    ),
);
$stats = $adAccount->getReportsStats(array(), $params);

运行此代码后,我得到了:

<b>Fatal error</b>:  Uncaught exception 'FacebookAds\Http\Exception\AuthorizationException' with message 'Invalid parameter' in /home/maciekmp/public_html/face_test/FacebookAds/Http/Exception/RequestException.php:129
fdfd

2 个答案:

答案 0 :(得分:0)

我在facebook api developer docs中找到了以下内容。搜索“异步”。如果您查询的数据太旧,则必须对图api进行异步调用。您收到的错误通常就是这种情况。当前版本的php-sdk不支持传递异步参数。由于AdAccount默认为GET请求,并且必须使用POST请求完成对图api的异步调用,因此您需要扩展AdAccount类并创建并准备使用POST方法的请求。

答案 1 :(得分:0)

我发现当你尝试超过30天到达当前日期时,它会显示此错误。

29天的数据并且有效,这是毫无意义的!我将在他们的开发者论坛上提问。

$fields = array('campaign_id', 'total_actions', 'spend'); // The fields I   ask for?
$params = array(
    'data_columns' => array (
        'campaign_group_id',
        'total_actions',
        'social_impressions',
        'impressions',
        'unique_impressions',
        'clicks',

        'spend',
        'impressions',
       // 'action_values_28d_view'
    ),

    'time_interval'=>array(
       'time_start'=>mktime(0,0,0,1,17,2015),
        'time_stop'=>mktime(0,0,0,date("n"),date("d"),date("Y"))
    ),
        /*
    'time_ranges'=>array(
        array(
            'day_start'=>array(
                'day'=>1,
                'month'=>1,
                'year'=>2015,
            ),
            'day_stop'=>array(
                'day'=>13,
                'month'=>2,
                'year'=>2015,
                ),
            ),
        ),

    */
   // 'date_preset' => 'last_28_days',
    'time_increment'=>1,
);