Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/facebook/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用PHPSDK更新对象?(参数对象是必需的)_Php_Facebook_Facebook Graph Api_Facebook Php Sdk_Facebook Opengraph - Fatal编程技术网

如何使用PHPSDK更新对象?(参数对象是必需的)

如何使用PHPSDK更新对象?(参数对象是必需的),php,facebook,facebook-graph-api,facebook-php-sdk,facebook-opengraph,Php,Facebook,Facebook Graph Api,Facebook Php Sdk,Facebook Opengraph,我得到以下错误 $response = $facebook->api( 'me/objects/namespace:result', 'POST', array( 'app_id' => app_id, 'type' => "namespace:result", 'url' => "http://samples.ogp.me/370740823026684", 'title' => "Sample Result",

我得到以下错误

$response = $facebook->api(
  'me/objects/namespace:result',
  'POST',
  array(
    'app_id' => app_id,
    'type' => "namespace:result",
    'url' => "http://samples.ogp.me/370740823026684",
    'title' => "Sample Result",
    'image' => "https://fbstatic-a.akamaihd.net/images/devsite/attachment_blank.png",
    'description' => ""
  )
);

我不知道在哪里添加参数对象。

在过去的几天里,我一直面临着同样的问题,最后我停止了尝试使用Facebook PHP SDK发送请求,转而使用仅发送HTTP请求

我正在创建一个对象,而不是更新一个对象,但是实现应该与您的需求没有太大区别。我得到了相同的错误参数对象是必需的,下面的实现解决了这个问题

我使用vinelab HTTP client composer包构建了如下请求:

The parameter object is required

正如我所说,我在实现中使用了vinelab HTTP包,您应该能够使用任何类似的包,或者直接在PHP中使用curl

我/物体应该是什么?自定义操作是通过发布到/{user id}/{namespace}:{action type name}创建的。你的对象类型叫什么?您还必须使用类型参数,请参见对象名称为结果。我想用php更新对象。我没有张贴行动。我听说数组必须是json编码的。但是我不知道在哪里指定对象参数。@CBroe我找到了这个。->我仍然不知道如何在php中使用object参数。你可以在答案中看到它是如何使用的……但是我在php中如何做到这一点呢?对象:json_encode$array。。如何在php中使用该对象?
$request = [
        'url' => 'https://graph.facebook.com/me/objects/namespace:object',
        'params' => [
            'access_token' => $fbAccessToken,
            'method' => 'POST',
            'object' => json_encode([
                'fb:app_id'         => 1234567890,
                'og:url'            => 'http://samples.ogp.me/1234567890',
                'og:title'          => 'Sample Object',
                'og:image'          => 'https://fbstatic-a.akamaihd.net/images/devsite/attachment_blank.png',
                'og:description'    => 'Sample Object'
            ])
        ]
    ];

// I'm using Laravel so this bit might look different for you (check the vine lab docs if you use that specific HTTP client)
$response = HttpClient::post($request);

// raw content
$response->content();

// json
$response->json();