2011-05-25 46 views
1

什麼是正確驗證用戶是否已放入Facebook個人資料圖片(即非默認的圖片)的方法,如果是,檢索它?測試用戶是否發佈了Facebook個人資料圖片,如果有,檢索它?

這約的方法How to determine if a Facebook user has uploaded a profile picture or its default?會談,但作者自己說,它是一個不好的方法:

public static function hasProfilePicture($fbuid) 
{ 
    /* Really stupid method to test if Facebook user has real profile picture 
    * based on FB returning a gif when you request a large photo. 
    * Use with care - for every profile there's an outgoing request! */ 
    $r = get_headers("http://graph.facebook.com/$fbuid/picture?type=square"); 
    return !array_search("Content-Type: image/gif",$r); 
} 

回答

1

如果用戶有個人資料照片,也可以通過http://graph.facebook.com/<facebook username>/picture訪問。例如,http://graph.facebook.com/gauravgupta.in/picture重定向到特定的URL並顯示我的Facebook個人資料圖片。

但是,如果用戶沒有資料圖片,上面的網址被重定向到標準的佔位符圖像的URL,這是目前http://profile.ak.fbcdn.net/static-ak/rsrc.php/v1/yo/r/UlIqmHJn-SK.gif

這絕對不是一個可靠的方法,但會工作到Facebook的決定改變它。

相關問題