0

我想我的應用程序鏈接到facebook用戶帳戶,但每次我經過檢索他們的個人資料的過程中,我得到這個錯誤過期我很困惑的是,當我最初要求從facebookaccess_token它返回一個令牌給我。Facebook的訪問令牌使用Facebook的SDK PHP

string(56) "access_token={app_id}|{app_secret}" 

對此我再叫已過期,我不知道爲什麼.....

我爲了獲得訪問令牌瞭解您必須遵守特定的工作流程。

  1. 客戶端請求通過SDK和登錄對話框訪問和權限。
  2. 用戶驗證和批准權限
  3. 訪問令牌返回到客戶端
  4. 短期訪問令牌(網絡)或基於什麼

長期訪問令牌(本地移動)圖形API調用我在我的代碼中看到,我得到第3步,但第4步失敗,因爲令牌被認爲已過期。有誰知道我能做些什麼來解決這個問題!?

我注意到,對於第1步,登錄對話框從不顯示,但我仍然得到一個訪問代碼,儘管如此。這可能與它有關嗎?這是我執行步驟1

<a class="lists" href="https://graph.facebook.com/oauth/authorize?client_id=564083793722908&redirect_uri=<?=urlencode($facebook_callback_url)?>&scope=offline_access,publish_stream,status_update">Connect a Facebook account</a> 

步驟2.似乎從來沒有發生

步驟3.訪問令牌雖然返回的方式。往上看。

第4步。失敗,上述過期錯誤。

有什麼建議嗎?

回答

1

您無法通過應用程序訪問令牌請求用戶信息。你需要一個usser訪問令牌來做到這一點。你的登錄過程需要在

https://developers.facebook.com/docs/facebook-login/manually-build-a-login-flow/v2.1#login

堅持的文檔來獲取用戶訪問令牌。可以看出,代碼並非如此。

此外,您只使用(長)不贊成的權限。見

+0

這些鏈接是一個巨大的幫助,它的工作現在。非常感謝你。 – Javacadabra 2014-10-09 11:32:14