2012-04-12 5 views
2

私はFacebook Javascript SDK http://developers.facebook.com/docs/reference/javascript/を使用して、Facebookアプリを認証し承認します。 次のように私のSDKコードは次のようになります。Javascript SDKのFacebookアクセストークンの有効期限の処理

window.fbAsyncInit = function() 
{ 
    FB.init({ 
     appId : 'MY_APP_ID', 
     status : true, // check login status 
     cookie : true, // enable cookies to allow the server to access the session 
     xfbml : true, // parse XFBML 
     oauth : true 
    }); 

    FB.login(function(response) 
    { 
     if (response.authResponse) 
     { 
      var userFBAccessToken = response.authResponse.accessToken; 
      console.log('userFBAccessToken: ' + userFBAccessToken); 
      FB.api('/me', function(response) 
      { 
       console.log('Good to see you, ' + response.name + '.'); 
       FB.logout(function(response) { 
        console.log('Logged out.'); 
       }); 
      }); 
     } else { 
      console.log('User cancelled login or did not fully authorize.'); 
     } 
    }, {scope: 'user_activities,user_notes,user_photos,user_videos,user_status,offline_access'}); 
}; 

// Load the SDK Asynchronously 
(function() { 
    var e = document.createElement('script'); e.async = true; 
    e.src = document.location.protocol + '//connect.facebook.net/en_US/all.js'; 
    document.getElementById('fb-root').appendChild(e); 
}()); 

私はoffline_access廃止と混乱しています。私の質問は、ここで私は私のアプリ詳細設定ページで「オフラインアクセスを非推奨」オプションを有効にした場合、以下のとおりです。

  1. 私はresponse.authResponse.accessTokenから受信したアクセストークンの有効期限になりますどのような。 2時間か60日かどうか? (現在の2012年5月1日以降の期間はどうなりますか)

  2. もしわずか2時間であれば、60日間延長することはできますか?

  3. ユーザーがオンラインになっているときに取得されたアクセストークンが有効かどうか、またはオフラインであっても有効になりますか?

ありがとうございます。

+0

誰でも上記の質問にお答えできますか?ありがとうございました。 – Venkat

+0

答えにもかかわらず、私はまだこれについて少し混乱しています。 javascript sdkのように見えるのは、アプリの秘密が必要なので、サーバーサイドでそれを行う必要があるということです。これを実行してクライアントに返すと、FB.initが呼び出されたときに新しいアクセス権についてブラウザに知らせるにはどうしたらいいですか?また、iOS SDKによって自動的に拡張されます。どうやって?あなたはいつでもiOS SDKにあなたのアプリの秘密を提供しません。 facebookはこれがiOSデバイスであることを確実にどのように知ることができますか? –

答えて

1

1 + 2。有効期限は2時間になります。期限が切れた後に延長する必要があります。 https://developers.facebook.com/roadmap/offline-access-removal/

  1. は常に有効である必要があり:拡張の要求は「新しいエンドポイントを介してクライアント側のOAuthと拡張access_tokenは有効期限」の下に、ここで説明されています。
+0

ありがとうございます。今私は明らかです。 – Venkat

+0

access_tokenを拡張するためのコード例はありますか?それは現在のFacebookのPHP SDKで行うことができますか? –

+3

URLに拡張リクエストの例があります。 PHP SDKを使用してアクセストークンを取得すると、2か月間アクセストークンが自動的に付与されます。 –

関連する問題