Php 通过Facebook发布状态';s图形api

Php 通过Facebook发布状态';s图形api,php,facebook,curl,facebook-graph-api,Php,Facebook,Curl,Facebook Graph Api,在PHP中,我试图使用graph api将状态发布到我们的Facebook粉丝页面,尽管遵循Facebook给出的指令,但下面的代码似乎没有更新状态 这是代码 $xPost['access_token'] = "{key}"; $xPost['message'] = "Posting a message test."; $ch = curl_init('https://graph.facebook.com/{page_id}/feed'); curl_setopt($ch, CURLOPT_

在PHP中,我试图使用graph api将状态发布到我们的Facebook粉丝页面,尽管遵循Facebook给出的指令,但下面的代码似乎没有更新状态

这是代码

$xPost['access_token'] = "{key}";
$xPost['message'] = "Posting a message test.";

$ch = curl_init('https://graph.facebook.com/{page_id}/feed'); 
curl_setopt($ch, CURLOPT_VERBOSE, 1); 
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); 
curl_setopt($ch, CURLOPT_HEADER, 1); 
curl_setopt($ch, CURLOPT_TIMEOUT, 120);
curl_setopt($ch, CURLOPT_POST, 1); 
curl_setopt($ch, CURLOPT_POSTFIELDS, $xPost); 
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 1);  
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 1); 
curl_setopt($ch, CURLOPT_CAINFO, NULL); 
curl_setopt($ch, CURLOPT_CAPATH, NULL); 
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 0); 

$result = curl_exec($ch); 
有人知道为什么这个代码不起作用吗?访问令牌是正确的

似乎“CURLOPT_SSL_VERIFYPEER”应该设置为0

e.g. curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);

要在Wall photo的相册上发布照片,您需要知道此相册的相册id(aid),并将其添加到附件中,如下所示 我留下我的密码:

    $url = "https://graph.facebook.com/" . $this->getPageId() . "/photos";
    $attachment = array(
        'access_token' => $this->getAccessToken(),
        'source' => '@' . $source,
        'aid' => $aid,
        'message' => $message,
    );

    $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);
    ob_start();
    curl_exec($ch);
    $this->setjsonResult(ob_get_contents());
    ob_end_clean();
    curl_close($ch);

打印
$result
显示了什么?您的意思是使用
$xPost['access\u token']=“{key}”而不是
$xPost['access_token']=“{$key}”只是另一个简单的问题。上面的命令返回一些值,如“{”id:“1347466624_1603672123512”}”。有没有办法禁用此输出?我知道这是在2010年发布的,但如果有人在这个问题上使用相同的一个步骤,则
    $url = "https://graph.facebook.com/" . $this->getPageId() . "/photos";
    $attachment = array(
        'access_token' => $this->getAccessToken(),
        'source' => '@' . $source,
        'aid' => $aid,
        'message' => $message,
    );

    $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);
    ob_start();
    curl_exec($ch);
    $this->setjsonResult(ob_get_contents());
    ob_end_clean();
    curl_close($ch);