2012-07-23 95 views
1

從我的Facebook應用程序訪問用戶照片時遇到問題。Facebook使用我的應用程序令牌訪問用戶照片

我請求的應用程序在運行時使用令牌:(在[]與實際值括號替換值

https://graph.facebook.com/oauth/access_token?client_id=[clientid] & client_secret = [clientsecret] & grant_type = client_credentials

然後我嘗試使用訪問令牌以訪問用戶的照片,即:

https://graph.facebook.com/fql?q=SELECT PID,src_big,src_small FROM相片其中PID IN( '4313357036026642248', '4313357036026642249' '4313357036026642250',「4313357 036026642251' , '4313357036026642252', '4313357036026642253', '4313357036026642254')

用戶已經驗證自己與我的應用程序,並接受了USER_PHOTO權限。

但是我得到0個結果。當我使用該用戶訪問令牌而不是應用令牌時,我確實得到了結果。

我已經證明了圖上的資源管理器這個問題: https://developers.facebook.com/tools/explorer?method=GET&path=1004281695

任何人有任何想法,爲什麼已被授予訪問用戶的照片不能得到使用的應用程序訪問令牌這些照片的應用程序?

由於提前,里斯

回答

0

因爲除了極少數例外,您可以使用有效的訪問令牌,該用戶(或他們的朋友一個只能訪問用戶的數據,這取決於所討論的對象的隱私)。

在這種情況下,使用用戶的訪問令牌,應用程序訪問令牌代表應用程序進行操作,不應該用於用戶特定的調用,因爲它將無法查看非用戶訪問令牌,除了非常有限的情況下的公開信息

+0

感謝您的回覆。但在這種情況下,用戶a會將照片上傳到應用程序(或將照片鏈接到應用程序)。用戶b則需要查看用戶a的上傳。用戶a和用戶b不是朋友,但他們都接受了應用程序的User_photos權限,所以爲什麼不能看到用戶a和用戶b的照片? – 2012-07-23 11:27:25

+0

如果照片來自用戶B的Facebook相冊,用戶B無法看到,爲什麼用戶B能夠通過應用程序看到它?如果照片存在於您自己的應用程序的上下文中,則需要將細節存儲在您自己的數據庫中 – Igy 2012-07-23 11:33:31

+0

好吧,也許我錯過了一點 - 我認爲通過給應用程序的照片訪問權限意味着應用程序可以獲取該用戶的照片。因此使用該應用的其他人可以看到這些照片,因爲該應用可以訪問它們。我確實將照片的細節存儲在我的數據庫中,但是我從Facebook獲取實際圖像。 – 2012-07-23 11:45:02

相關問題