2012-07-10 90 views
0

這是我當前的代碼請求權限查看電子郵件和user_photosFacebook - 如何請求離線訪問user_photos?

我要訪問用戶的照片,當用戶處於離線狀態,我好像記得,這是可能的,但也許我錯了。無論如何,如果可能的話,它是如何完成的?

+0

離線訪問現已棄用。但似乎可以延長令牌的到期時間。 https://developers.facebook.com/roadmap/offline-access-removal/ – 2012-07-10 04:26:51

回答

1

炫敏(評論)有正確的鏈接。

作爲一個非常簡單的總結:

  1. 日誌用戶正常;你會得到一個訪問令牌。這可能是短期或長期(60天)令牌 - 取決於登錄方法是服務器端還是客戶端(PHP或JS),但不用擔心會得到什麼。
  2. 請注意,如果您擔心:您也可以檢查過期是否滿意,因爲您在獲得訪問令牌時會提供到期日。但我再次跳過這一步。
  3. 每天一次,您可以將令牌延長至整整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

,你會得到回一個訪問令牌(可能會或可能不一樣)。只需使用/存儲這個新的訪問令牌來代替舊的訪問令牌。

其實很簡單 - 除了跟蹤「每天一次」升級位。 (而現在你可以忽略這一點,並多次調用如果需要的話 - 只是會減慢速度分數)


在迴應評論 - 「你怎麼調用URL,讓你的令牌」

你不重定向用戶,因爲它是你需要響應值,所以你需要調用它並處理它。

在PHP中最簡單的測試(但不推薦)是使用

$response = file_get_contents($url); 

,但在生產系統上,你應該USSE捲曲(如某些生產系統不允許外部URL的file_get_contents)。無論是Google的CURL示例,還是您可以在包含的Facebook SDK庫中使用makeRequest()函數。

+0

謝謝,我一直在閱讀很多,這是我得到的第一件事。只是一個問題,我該如何調用該網址?這和重定向它一樣嗎?謝謝! – lisovaccaro 2012-07-10 04:54:38

+0

btw我使用PHP並獲得一個短暫的訪問令牌。但正如你所說我直接去了3 – lisovaccaro 2012-07-10 04:56:13

+0

更新回答與答案。 – Robbie 2012-07-10 05:31:06