我正在構建一個Facebook應用程序,它具有(作爲其功能的一部分)顯示用戶的FB照片。在這個問題上的條款和條件對我來說有點模糊,所以我想我會問這裏:Facebook應用程序:存儲用戶照片縮略圖
有誰知道是否可以創建其FB照片的縮略圖並將它們存儲在我的服務器上?如果是這樣(假設我擁有offline_access權限以及所有這些權限),我是否還必須每24小時刷新一次?
非常感謝!
我正在構建一個Facebook應用程序,它具有(作爲其功能的一部分)顯示用戶的FB照片。在這個問題上的條款和條件對我來說有點模糊,所以我想我會問這裏:Facebook應用程序:存儲用戶照片縮略圖
有誰知道是否可以創建其FB照片的縮略圖並將它們存儲在我的服務器上?如果是這樣(假設我擁有offline_access權限以及所有這些權限),我是否還必須每24小時刷新一次?
非常感謝!
總之,答案是號
Facebook的Platform Policy狀態:
你不能存儲或緩存任何數據 您收到我們超過24 小時,除非這樣做被 允許爲脫機例外,或者該數據是 明確指定爲可存儲的 數據。
的offline_access
擴展權限實際上已經沒有你是否能存儲任何數據的影響,你可能混淆其與offline exception
,這是如下:
離線例外:應用該 運行上由用戶擁有的設備(例如 桌面或者膝上型計算機,移動設備 設備或者其他嵌入式設備) - 可以將從 接收的用戶數據緩存僅超過24小時 當互聯網連接是 不可用或 應用程序不可能運行。這樣的數據可以存儲在客戶端設備上,但不是 遠程服務器,並且不能使 可供開發人員使用。超過24小時的年齡較大的緩存 數據可以是 顯示給代替 更新的數據的唯一直到更新的用戶(或以其他方式 由應用程序使用的)是 可能的,並且在上一次更新之後超過14 天無的情況。
因此,這意味着你允許存儲,除非你被offline exception
覆蓋,有下列數據字段:
User data you receive from Facebook that you can store indefinitely:
uid User ID
nid Primary network ID
eid Event ID
gid Group ID
pid Photo ID
aid Photo album ID
flid friend list ID
listing_id Marketplace listing ID
page_id Facebook Page ID
proxied_email Placeholder email addresses for your users
notes_count Total number of notes written by the user
profile_update_time Time that the user's profile was last updated
你不應該需要複製/調整用戶的照片,只需在Facebook上緩存照片的網址,然後使用瀏覽器/ css將其尺寸調整爲您需要的尺寸即可。使用FQL查詢照片表以獲取照片的全尺寸版本(src_big)的URL。或者查詢已經創建的較小尺寸的Facebook。 這是關於如何查詢照片url url信息的網址: http://wiki.developers.facebook.com/index.php/Photo_%28FQL%29
這將工作得很好(而且是我們最終做的) - 只是希望我們可以優化一點。感謝壽! – mikedory 2009-12-14 17:36:46
將照片存儲在自己的機器上有沒有明確的優勢?無論如何,如果你將它們從API中拉出來,似乎使用該模式會更有意義。我個人對FB API一無所知,但我敢打賭,後臺有很多事情正在進行,以優化頻繁操作(如檢索個人資料照片)的性能。 – 2009-12-02 17:21:05
我們認爲 - 真正的問題只是調整大小。正如你所說的,API非常適合於快速返回照片,人物等信息,但照片不會以我們需要的尺寸返回。我們寧願不必在每次加載頁面時調整大量內容。 – mikedory 2009-12-02 17:26:31
這是有道理的。 :) – 2009-12-02 18:26:23