Facebook, оставьте комментарий через php curl - PullRequest
0 голосов
/ 02 сентября 2011

Из одного урока здесь:

Опубликовать ответ на комментарий в Facebook с помощью cURL PHP / Graph API

Я пытался оставить комментарий после одного сообщения, но вернул:

[type] => OAuthException [message] => (#200) The user hasn't authorized the application to perform this action

Это не идентификатор записи на стене моего аккаунта приложения, я пытался зайти на мою стену друзей, он разрешил мое приложение, я могу опубликовать сообщение на его стене, но в комментарии не получилось, я получил идентификатор сообщения через https://graph.facebook.com/<his fid>/feed?access_token=140XXXXXXXXXXX, поэтому идентификатор сообщения не имеет проблем.

Какие шаги я пропустил?

$fbId = '100001102789652_233997699980321';
$accessToken = '140XXXXXXXXXXXX';
$url = "https://graph.facebook.com/{$fbId}/comments";

$attachment =  array(
        'access_token'  => $accessToken,
        'message'       => "Hi comment",
);

// set the target url
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 2);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $attachment);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$comment = curl_exec($ch);
curl_close ($ch);
$comment = json_decode($comment, TRUE);
print_r($comment);

?>

1 Ответ

0 голосов
/ 02 сентября 2011
curl_setopt($ch, CURLOPT_POSTFIELDS, $attachment);

должно быть

curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($attachment));

как вы не можете разместить массив

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...