0

curl を使用して Facebook からユーザー フィードを取得する必要があります。curl を介してリクエストを送信し、取得しました

Facebook returned HTTP Error Code: 404 error, follow is my code to connect facebook through curl 
<?php

$curl = curl_init();
curl_setopt($curl, CURLOPT_ENCODING , 'gzip, deflate');
curl_setopt($curl, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($curl, CURLOPT_USERAGENT, "php-facebook-wall (https://github.com/dordotky/php-facebook-wall)");
curl_setopt($curl, CURLOPT_HEADER, false);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_URL, $url = "https://graph.facebook.com/".FACEBOOK_USER_NAME
    ."/".FACEBOOK_USER_OBJECT."?access_token=".FACEBOOK_APP_ID."|".FACEBOOK_APP_SECRET);

// Execute our curl request
$result = curl_exec($curl);

// Check that we didn't encounter any errors while processing
$http_code = curl_getinfo($curl, CURLINFO_HTTP_CODE);
if ((!curl_error($curl)) && ($http_code == 200))
{
    $json = json_decode($result, true);
} else
{
    die("Facebook returned HTTP Error Code: ".$http_code);
}
?>
4

1 に答える 1

1

Facebook ウォールへの投稿画像の例をご覧ください。お手入れ手順:

  1. サーバーで SSL が有効になっている。
  2. しばらくしてアクセストークンが変更されたので、最新のアクセストークンを使用してください。

    関数 facebook_upload($fb_oauth_token,$item_image) {

    $file = $item_image;
    
        $args = array(
            'access_token'=>urlencode($fb_oauth_token)
        );
    
        $args[basename($file)] = '@'.($file);
    
        $ch = curl_init();
        $url = 'https://graph.facebook.com/me/photos';
        curl_setopt($ch, CURLOPT_URL, $url);
        curl_setopt ($ch, CURLOPT_SSL_VERIFYHOST, 0);
        curl_setopt ($ch, CURLOPT_SSL_VERIFYPEER, 0);
        curl_setopt($ch, CURLOPT_HEADER, false);
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
        curl_setopt($ch, CURLOPT_POST, true);
        curl_setopt($ch, CURLOPT_POSTFIELDS, $args);
        $data = curl_exec($ch);
        //returns the photo id
        $response = json_decode($data,true);
        //print_r(curl_error($ch));
    
        //to check response
        //if($response[id]>0){
            // yes
        //}
        json_decode($data,true);    
    

    }

于 2013-03-05T10:01:57.560 に答える