2011-01-23 13 views

Respuesta

19

Haciendo una investigación exhaustiva llegué a la conclusión de que no hay ningún método para hacer esto!

Lo que he encontrado:
Un viejo REST API llamada friends.getAppUsers que se lleva todos los identificadores de los amigos del usuario que autorizaron la aplicación.

Lo que me gustaría que he encontrado:
Después de leer la sección App Login en el authentication document:

Además de ingreso de usuarios, Facebook Plataforma de apoyo Aplicación de sesión usando la OAuth 2.0 Cliente Flujo de credenciales El Inicio de sesión en la aplicación le permite tomar diversas acciones administrativas para su aplicación, , como recuperar datos de Insights o aprobando solicitudes.

pensé que el objeto application tendría un método directo para esto (similar a accounts):

$facebook->api("/APP_ID/users"); 

pero estaba equivocado. Y luego, con la introducción de la función insights, me sorprendió que solo pueda obtener el recuento de los ID de usuario.

Lo que puede hacer:
Almacenamiento del ID de usuario en su base de datos tan pronto como un usuario autorizar su solicitud y si su aplicación ya cuenta con los usuarios (el caso más probable), comprobar si tiene un registro para cada usuario que interactúa con su aplicación en su base de datos ... de esta manera, obtendrá las identificaciones de usuario para sus usuarios activos en muy poco tiempo.

+2

Sí, parece ser la mejor solución para almacenarlo en un db extra. pero creo que sería bueno ... no almacenar datos de usuario. por lo que también puede obtener solo un uid del contenido del propietario/creador del evento. también el evento muestra a ambos. –

0

Solo un poco más sobre esto - logré encontrar una gran cantidad de los ID de usuario que estaba buscando haciendo búsquedas básicas de Graph API y luego comprobando que eran válidas con mi aplicación.

Buscar una dirección de correo electrónico o nombre de usuario aquí: - https://developers.facebook.com/tools/explorer?method=GET

QUERY: https://graph.facebook.com/[email protected]&type=user

Si obtiene un fósforo o más de una, se puede comprobar que es válida como instalar en el botón de consulta FQL del mismo explorador : -

SELECT uid FROM user WHERE uid = *USER_ID_TO_SEARCH* AND is_app_user = 1 

Si aparece como un fluido, está bien - son válidos. Esto me ayudó a llegar a lo que necesitaba (cuando no tenía información de usuarios de mi aplicación sobre el registro).

+0

No pude encontrar la manera de buscar un correo electrónico desde el explorador de API de gráficos. ¿Qué sintaxis usaste? Intenté 'SELECCIONAR nombre FROM usuario donde contact_email = [email protected]' pero parece que no me gustan los correos electrónicos –

1
GET /v2.10/{app-id}/accounts 

Usted recibirá todas las cuentas de la aplicación

Cuestiones relacionadas