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

Я знаю, как отправить фид на стене друга. например:

$url = 'https://graph.facebook.com/' . $fbId . '/feed'; $attachment = array( 'access_token' => $accessToken, 'message' => $msg, 'name' => $name, 'link' => $link, 'description' => $desc, 'picture' => $logo, ); // 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); $go = curl_exec($ch); curl_close ($ch); $go = explode(":", $go); $go = str_ireplace('"', '', $go[1]); $go = str_ireplace('}', '', $go); return $go; 

Но я хочу знать, как отправить ответ на конкретный фид, используя cURL PHP или API Facebook Graph. Может ли кто-нибудь помочь мне решить эту проблему?

Вы пробовали это:

https://graph.facebook.com/" . $go . "/comment

Я думаю, если вы можете опубликовать фид с помощью /feed , вы можете оставить комментарий с /comment url.

Спасибо.

Хорошо, прежде всего, это лучший способ извлечения id:

 $go = json_decode($go, TRUE); if( isset($go['id']) ) { // We successfully posted on FB } 

Поэтому вы бы использовали что-то вроде:

 $url = 'https://graph.facebook.com/' . $fbId . '/feed'; $attachment = array( 'access_token' => $accessToken, 'message' => "Hi", ); // 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); $go = curl_exec($ch); curl_close ($ch); $go = json_decode($go, TRUE); if( isset($go['id']) ) { $url = "https://graph.facebook.com/{$go['id']}/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); } 

введите описание изображения здесь

использование

 FB.api('/[POST_ID]/comments', 'post', { 'message' : 'comment post' }); 

Убедитесь, что у вас есть привилегия publish_stream.

Я не пробовал это, но вы должны попробовать следующий метод:

  1. получите идентификатор сообщения, которое вы только что разместили. Проверьте, есть ли какие-либо значения api. если нет, вы можете получить идентификатор из поля «id» в «https://graph.facebook.com/".$fbId."/feed».

  2. используйте FB.api ('/ [POST_ID] / comments', 'post', {'message': 'comment post'}); убедитесь, что у вас есть привилегия publish_stream.