如何使用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();