2010-06-09 37 views
7

Usando Graph API de Facebook, dado un nombre de usuario xyz (suponiendo que hayan autenticado mi sitio), ¿cómo obtengo una lista de todas las páginas de Facebook que el usuario administra?Facebook Graph API + Facebook Pages

Respuesta

0

@rmorrison - Esta no es la API gráfica sin embargo. Con la nueva adición "me gusta", puede usar esta URL: h ttps: //graph.facebook.com/me/likes? Access_token = blah! o h ttps: //graph.facebook.com/USER_ID/likes? access_token = blah!

+0

No está buscando "me gusta", está buscando páginas que administre el usuario. –

+0

¿Sabes cómo realizar una acción similar en una página? – WoodenKitty

15

La propiedad accounts en el objeto user dice:

Las páginas de Facebook de propiedad del usuario actual. Si se ha otorgado el permiso manage_pages, esta conexión también proporciona access_tokens que se pueden usar para consultar la Graph API en nombre de la página.

http://developers.facebook.com/docs/reference/api/user

+0

Ooh esto debe ser nuevo ... ¡nunca antes había notado esa conexión! Aunque, no estoy seguro de que esta sea la respuesta correcta. Puedes ser un administrador en una página sin ser el "propietario". –

+0

Parece la respuesta correcta para mí, devuelve todas las páginas en las que soy administrador, incluso las que no creé yo mismo. – dar

5

Después de conseguir el acceso de emergencia se puede obtener todos los detalles de la lista de todas las páginas de Facebook que el usuario administre.

https://graph.facebook.com/[FACEBOOKUSERID]?metadata=1&access_token= 

La salida se verá como

{ 
    "name": "Facebook Developer Garage Austin - SXSW Edition", 
    "metadata": { 
     "connections": { 
     "feed": "http://graph.facebook.com/331218348435/feed", 
     "picture": "https://graph.facebook.com/331218348435/picture", 
     "invited": "https://graph.facebook.com/331218348435/invited", 
     "attending": "https://graph.facebook.com/331218348435/attending", 
     "maybe": "https://graph.facebook.com/331218348435/maybe", 
     "noreply": "https://graph.facebook.com/331218348435/noreply", 
     "declined": "https://graph.facebook.com/331218348435/declined" 
     } 
    } 
} 
+0

Vi sus 'metadatos' aquí por casualidad, y finalmente encontré cómo encontrar las conexiones de un objeto Usuario - simplemente no puedo evitar preguntarme por qué no se encuentra mención de esta colección de metadatos en los documentos oficiales de fb (al menos no, si no sabes qué buscar). ty, a pesar de que mi problema solo estaba conectado remotamente. – kontur

+0

Es genial escuchar que su problema se ha resuelto. Su bienvenida. – PrateekSaluja

0

FqL es la mejor manera de conseguir las páginas de usuario para el cual él es el administrador. A medida que los otros gusten de usuario dará todas las páginas que le gusta al usuario.

1

Esto es lo que uso. Funciona perfecto

$pages = $facebook->api(array('method' => 'fql.query','query' => 'SELECT page_id FROM page_admin WHERE uid = '.$uid.'')); 

foreach($pages as $k=>$v) { 
    echo 'page id#:'.$v['page_id'].'<br/>'; 
} 

¡Esto es por supuesto después de que tenga la sesión creada para el usuario de fb! El $uid sería el ID de perfil # del usuario específico de Facebook al que devolverá una lista de páginas administradas.

4

¡Utilice una consulta fql! Esa es la mejor manera de obtener las páginas para las que el usuario es administrador. También podrá restringir los nombres también. es decir, páginas con nombres vacíos Una consulta fql de muestra que también le proporciona los detalles de la página.

SELECT page_id,page_url,name,pic_square FROM page WHERE page_id IN (SELECT page_id FROM page_admin WHERE uid = " + **UserId** + ") and name!='' 

identificación de usuario - ID del administrador

NOTA Este método no funcionará a partir de la versión 2.1 del API gráfico como FQL se desaprobó desde esa versión en adelante

0

Puede obtener una lista de páginas de un simple API de Facebook.

https://graph.facebook.com/{user-id}/accounts?access_token={access-token} 

Proporcionará una lista de páginas para el usuario que ha creado.

Cuestiones relacionadas