1

codeigniter プロジェクト内で Facebook グラフ API アクセスにこのライブラリを使用しています: http://www.haughin.com/code/facebook/

私の Web アプリは Facebook JS SDK を使用してクライアント側でユーザーを認証し、ログインが完了するとすぐに、ユーザーのユーザー ID とセッション オブジェクトが AJAX 要求を介してサーバーに送信されます。サーバーからグラフ API を呼び出してユーザーの基本情報を受け取りたいので、facebook->login() メソッドを呼び出してセッションを受信する必要を回避できる方法があるかどうか疑問に思っています。 Facebookからリダイレクト?誰でもこれを行う方法を知っていますか?

4

2 に答える 2

2

Facebook SDK はまったくお勧めしません。自分で物事を行うと、より多くの制御が可能になり、より簡単になります。次のような cURL 関数を設定するだけです。

function curl($url, $request = 'GET'){
    $ch = curl_init();
    $curlopt = array(
        CURLOPT_URL => $url,
        CURLOPT_CUSTOMREQUEST => $request,
        CURLOPT_CONNECTTIMEOUT => 10,
        CURLOPT_RETURNTRANSFER => true,
        CURLOPT_TIMEOUT        => 60,
        CURLOPT_USERAGENT      => 'facebook-php-2.0',
    );
    curl_setopt_array($ch, $curlopt);
    $response = curl_exec($ch);
    if($response === false)
        trigger_error(curl_error($ch));
    curl_close($ch);
    return $response;
}

そして、次のような Facebook API 関数:

function fb_api($url, $access_token = false, $request = 'GET'){
    $url = 'https://graph.facebook.com/'.$url;
    if($access_token)
        $url .= (strstr($url, '?') ? '&' : '?').'access_token='.$access_token;
    return json_decode(curl($url, $request), true);
}

次に、次のようにグラフ API にリクエストを送信できます。

fb_api('me', $access_token);

于 2011-07-23T23:34:04.627 に答える
0

どういうわけかcurlがインストールされていない場合は、いつでも私のプロキシライブラリを使用できます:http://codeigniter.com/forums/viewthread/186250/

于 2011-07-24T09:32:02.230 に答える