0

これは、メールとuser_photosを見る許可を要求する私の現在のコードです

    'req_perms' => 'email,user_photos',

ユーザーがオフラインのときにユーザーの写真にアクセスしたいのですが、これが可能だったことを覚えているようですが、間違っている可能性があります。とにかく可能であれば、どのように行われますか?

4

1 に答える 1

1

ヒョンミン(コメント)は正しいリンクを持っています。

非常に簡単な要約として:

  1. 通常どおりユーザーをログインします。アクセストークンを取得します。これは、短命または長命(60日)のトークンである可能性があります-サーバー側またはクライアント側(PHPまたはJS)のログイン方法によって異なりますが、どちらを取得するかは気にしないでください。
  2. 心配な場合は注意してください。アクセストークンが与えられたときに有効期限が提供されるため、必要に応じて有効期限を確認することもできます。しかし、私は再びこのステップをスキップします。
  3. 1日1回、トークンを60日間延長できます。単に電話する

    https://graph.facebook.com/oauth/access_token
    client_id = APP_ID&client_secret = APP_SECRET&grant_type = fb_exchange_token&fb_exchange_token = EXISTING_ACCESS_TOKEN

そして、アクセストークンを取り戻します(同じである場合とそうでない場合があります)。古いものの代わりにこの新しいアクセストークンを使用/保存するだけです。

「1日1回」のアップグレードビットを追跡するビットを除いて、実際には本当に単純です。(そして今のところ、これを無視して、必要に応じて複数回呼び出すことができます-ほんの少しだけ遅くなります。)


コメントへの応答-「トークンを提供するURLをどのように呼び出しますか?」

応答値が必要なのはユーザーであるため、ユーザーをリダイレクトしないため、ユーザーを呼び出して処理する必要があります。

PHPでは、テストが最も簡単です(ただし推奨されません)。

$response = file_get_contents($url);

ただし、本番システムではCURLを使用する必要があります(一部の本番システムでは外部URLのfile_get_contentsが許可されていないため)。CURLの例をグーグルで検索するか、付属のFacebook SDKライブラリのmakeRequest()関数を利用することができます。

于 2012-07-10T04:38:15.943 に答える