Hay una manera de saber si un usuario carga una imagen para el perfil o cuenta de usuario predeterminado de la imagen de Facebook a través de FQL o somthing?

OriginalEl autor amirash | 2011-04-05

3 Comentarios

  1. 8

    Puede utilizar la secuencia de comandos de Python a continuación (no se menciona ningún lenguaje de programación) para que funcione.

    urllib.urlopen('https://graph.facebook.com/<PROFILE_ID>/picture?access_token=%s' % access_token).geturl()
    

    Esto le proporcionará un Facebook perfil de la URL de la fotografía. Si la URL contiene <PROFILE_ID> a continuación, se carga una imagen. Otra cosa el valor predeterminado Facebook imagen está cargado.

    Por ejemplo, si la imagen subida:

    http://profile.ak.fbcdn.net/hprofile-ak-snc4/195361_<PROFILE_ID>_4179703_q.jpg
    

    otra cosa:

    Para hombres:

    http://b.static.ak.fbcdn.net/rsrc.php/v1/yo/r/UlIqmHJn-SK.gif
    

    Para las mujeres:

    https://fbcdn-profile-a.akamaihd.net/static-ak/rsrc.php/v1/y9/r/IB7NOFmPw2a.gif
    

    Espero que esto ayude.

    Para los Desarrolladores de PHP, Usted puede utilizar: <?php print_r(get_headers("https://graph.facebook.com/<PROFILE_ID>/picture?access_token=" . $access_token)); ?> Y encontrar la ubicación en el encabezado 🙂
    Para hombres y mujeres, hay diferentes imágenes. Para averiguar cómo lo ubicaciones para hombres/mujeres. También es posible verificar archivos de suma de comprobación.
    He actualizado el post. Espero que te ayudan… 🙂
    ¿Qué piensa usted, ¿con qué frecuencia, a continuación, cambiar la ubicación de los archivos gif?
    yo no creo que… que… si todavía entonces usted necesidad de mantener el control de estos lugares.

    OriginalEl autor Love Sharma

  2. 23

    Si un usuario no tiene una foto, a continuación, el is_silhouette campo será verdadera cuando se solicita el objeto de usuario con la «foto» del campo especificado.

    Ejemplo de solicitud:

    https://graph.facebook.com/username?fields=picture
    

    Respuesta:

    {
       "id": "100002095576350",
       "picture": {
          "data": {
             "url": "http://profile.ak.fbcdn.net/static-ak/rsrc.php/v2/yo/r/UlIqmHJn-SK.gif",
             "is_silhouette": true
          }
       }
    }
    

    Rápido, sucio función de PHP:

    function facebook_user_has_photo($username_or_id){
    
            $request = file_get_contents('https://graph.facebook.com/'.$username_or_id.'?fields=picture');
    
            if($request):
    
                $user = json_decode($request);
    
                if($user && !$user->picture->data->is_silhouette) return true;
    
            endif;
    
            return false;
    
    }
    
    esto funciona como un encanto
    esto debe ser aceptado respuesta.

    OriginalEl autor Adam

  3. 3

    De mis experimentos con el Facebook API, parece que uno tiene que obtener la imagen con el fin de saber si es estática predeterminada o no.

    En el momento de la escritura, parece que todas las fotos subidas en Facebook son convertidas a JPEG, mientras que la estática predeterminada de imágenes en formato GIF. (Por CIERTO, esto no es consistente con el tamaño de las miniaturas).

    Buscando específico de archivo GIF o una dirección URL específica de la ruta no es fiable (tenga en cuenta que hay CDN direcciones Url de los involucrados, y que hay diferentes archivos estáticos para hombres y mujeres). Suponiendo que Facebook no re-codificar la totalidad de sus perfiles de fotos de la base de datos, supongo que buscando un GIF es lo suficientemente confiable.

    Aquí una muestra de la función de PHP para hacer esto. Lo he probado con éxito con mis 120 Facebook amigos, y parece que hacer el trabajo.

    public static function hasProfilePicture($fbuid) 
    {
        /* Really stupid method to test if Facebook user has real profile picture
        * based on Facebook returning a GIF image 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);
    }
    

    OriginalEl autor Camelhive

Dejar respuesta

Please enter your comment!
Please enter your name here