【问题标题】:facebook php ads sdk - AdCraeative Invalid parameterfacebook php ads sdk - AdCraeative 参数无效
【发布时间】:2018-12-26 13:35:41
【问题描述】:

我正在尝试进入 facebook php ads sdk。

use FacebookAds\Object\AdCreative;
use FacebookAds\Object\Fields\AdCreativeFields;
use FacebookAds\Object\Fields\AdCreativeObjectStorySpecFields;

$creative = new AdCreative(null, $account->id);
$creative->setData(array(
  AdCreativeFields::NAME => 'Sample Creative',
  AdCreativeFields::TITLE => 'Welcome to the Jungle',
  AdCreativeFields::BODY => 'We\'ve got fun \'n\' games',
  AdCreativeFields::IMAGE_HASH => $image->hash,
  AdCreativeFields::OBJECT_URL => 'http://www.example.com/',
  AdCreativeObjectStorySpecFields::PAGE_ID => 101xxxxxxxxxxxxx,
));

$creative->create();
echo 'Creative ID: '.$creative->id . "\n";

我仍然收到此错误:

致命错误:未捕获的 FacebookAds\Http\Exception\AuthorizationException:C:\xampp\htdocs\FB_ADS_PHP\vendor\facebook\php-business-sdk\src\FacebookAds\Http\Exception\RequestException.php 中的参数无效:144堆栈跟踪:#0 C:\xampp\htdocs\FB_ADS_PHP\vendor\facebook\php-business-sdk\src\FacebookAds\Http\Client.php(215): FacebookAds\Http\Exception\RequestException::create(Object( FacebookAds\Http\Response)) #1 C:\xampp\htdocs\FB_ADS_PHP\vendor\facebook\php-business-sdk\src\FacebookAds\Http\Request.php(282): FacebookAds\Http\Client->sendRequest(对象(FacebookAds\Http\Request)) #2 C:\xampp\htdocs\FB_ADS_PHP\vendor\facebook\php-business-sdk\src\FacebookAds\Api.php(162): FacebookAds\Http\Request->execute( ) #3 C:\xampp\htdocs\FB_ADS_PHP\vendor\facebook\php-business-sdk\src\FacebookAds\Api.php(204): FacebookAds\Api->executeRequest(Object(FacebookAds\Http\Request)) # 4 C:\xampp\htdocs\FB_ADS_PHP\vendor\facebook\php-business-sdk\src\FacebookAds\Object\AbstractCrudObject.php(241): FacebookAd s\Api->call('/act_4225516715...', 'POST' in C:\xampp\htdocs\FB_ADS_PHP\vendor\facebook\php-business-sdk\src\FacebookAds\Http\Exception\RequestException.php on第 144 行

在这一行:

$creative->create();

有什么帮助吗?

【问题讨论】:

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


    【解决方案1】:

    所以 facebook API 总是在变化并且超级烦人。你所拥有的应该工作,我的意思是我正在阅读文档,但我设法让它工作的方式是向 adcreatives 边缘发布一个 POST。

    try {
      // Returns a `Facebook\FacebookResponse` object
      $response = $fb->post(
        '/act_<AD_ACCOUNT_ID>/adcreatives',
        array (
            'name'            => 'Sample Creative',
            'title'           => 'Welcome to the Jungle',
            'body'            => 'We\'ve got fun \'n\' games',
            'image_hash'      => $image->hash,
            'object_url'      => 'http://www.example.com/',
            'object_story_id' => '101xxxxxxxxxxxxx', 
        ),
        '{access-token}'
      );
    } catch(Facebook\Exceptions\FacebookResponseException $e) {
      echo 'Graph returned an error: ' . $e->getMessage();
      exit;
    } catch(Facebook\Exceptions\FacebookSDKException $e) {
      echo 'Facebook SDK returned an error: ' . $e->getMessage();
      exit;
    }
    $graphNode = $response->getGraphNode();
    

    但是我刚刚注意到,在您的原始帖子中,您从哪里获得 $image->hash?那可能是你的问题。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-08-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-01-30
      • 1970-01-01
      相关资源
      最近更新 更多