I know how to post a feed on the friend's wall. eg:
$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;
But I want to know, how to post a reply to the particular feed using cURL PHP or Facebook Graph API. Can anybody help me out from this problem?
Have you tried this:
https://graph.facebook.com/" . $go . "/comment
I think, if you can post a feed with /feed
, then you can post comment with /comment
url.
Thank you.
Okay, first of all, this is a better way of extracting the id:
$go = json_decode($go, TRUE);
if( isset($go['id']) ) {
// We successfully posted on FB
}
So you would use something like:
$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);
}
Use
FB.api('/[POST_ID]/comments', 'post', { 'message' : 'comment post' });
Make sure you have the publish_stream privilege of course.
I haven't tried this, but you should try the following method:
get the id of the post you just posted. Check if there are any values graph api returns. if not, you can get the id from the "id" field in "https://graph.facebook.com/".$fbId."/feed".
use FB.api('/[POST_ID]/comments', 'post', { 'message' : 'comment post' }); make sure you have the publish_stream privilege ofcourse.
来源:https://stackoverflow.com/questions/5758501/post-a-reply-on-a-comment-in-facebook-using-curl-php-graph-api