Facebook Ads API PHP:使用AdVideo类

时间:2015-08-06 13:36:50

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

使用API​​ v2.4在PHP中查询

当我尝试使用AdVideo类上传视频时,如下所示

  $time_limit = ini_get('max_execution_time');
  set_time_limit(0);
  $video = new AdVideo(null, $account_id);
  $video->{AdVideoFields::NAME} = *name*;
  $video->{AdVideoFields::SOURCE} = *video_path*;
 try {
     $video->create();
 } catch (\FacebookAds\Http\Exception\RequestException $e) {
     echo "<script>alert('" . $e->getErrorUserMessage() . "')</script>";
     set_time_limit($time_limit);
     return;
 }
 set_time_limit($time_limit);

结果:

我得到以下例外 -
&#39;操作在60000毫秒后超时,接收到0个字节&#39;

我上传的视频大约为20MB,上传需要更多时间。怎么办呢?有没有办法可以显示上传的进度?这个类是否支持分块上传?

尝试set_time_limit(0);但没有帮助。

1 个答案:

答案 0 :(得分:1)

这看起来就像你在SDK中默认达到CURL超时60。

您可以使用以下代码将超时更改为无限制:

Api::instance()
  ->getHttpClient()
  ->getAdapter()
  ->getOpts()
  ->offsetSet(CURLOPT_TIMEOUT, 0);