2010-10-08 40 views
11

Hay algunas preguntas sobre el correo de Facebook & sobre StackOverflow, pero después de leerlas todavía tengo un problema para recuperar los correos electrónicos de los usuarios.Facebook Graph API y el correo electrónico de un amigo

Nuestra aplicación implementada en Flex y utiliza API REST. Y anteriormente usaba notifications.sendEmail. La aplicación tiene publish_stream y permisos de correo electrónico (marcados con users.hasAppPermission).

Probé users.getInfo para obtener la dirección proxied_email. Sin embargo, esta función no devuelve dirección de correo electrónico del amigo ..

Entonces, decidí hacer la siguiente prueba utilizando Graph API y el navegador web:

  1. inaugurado el siguiente enlace de autorización con permisos ampliados:

    https://graph.facebook.com/oauth/authorize?client_id=[app_id] & alcance = publish_stream, offline_access, correo electrónico & redirect_uri = http: //www.facebook.com/connect/login_success.html

volvió código para recuperar señal_acceso

  1. oppened el siguiente enlace para recuperar señal_acceso

graph.facebook.com/oauth/access_token?client_id=[app_id] & client_secret = [secreto] & código = [código] & redirect_uri = http: //www.facebook.com/connect/login_success.html

Devolvió access_token. Y ahora puedo usar GraphAPI.

  1. probado con mi cuenta

graph.facebook.com/me?access_token=[token]

Ok. Me devolvió mi emal.

  1. probado con mi amigo

    graph.facebook.com/[friend_id]?access_token=[token]

Y aquí hay un campo de correo electrónico!

Así que mis preguntas son

¿Qué hice mal? ¿Es posible obtener el correo electrónico de un amigo a través de Facebook API (API GraphAPI o REST)?

Gracias.Sólo

+0

se puede conseguir más mordiscos aquí: http://forum.developers.facebook.net/viewforum.php?id=52 –

+0

voy a preguntar allí también, THX. – skozlovf

Respuesta

28

correo electrónico permiso da acceso a su correo electrónico solamente.

Si nos fijamos en la página extended permissions que dice:

Del mismo modo, para proteger la privacidad de los usuarios que no han autorizado expresamente su solicitud, ésta sólo podrá acceder a la información básica de perfil sobre un amigos del usuario, como sus nombres e imágenes de perfil. Si su aplicación necesita acceder a otros datos sobre los amigos de un usuario para habilitar la funcionalidad social, deberá solicitar algunos de los permisos de amigos especiales que se detallan a continuación.

Y si mira la tabla a continuación, dice "no disponible" para el permiso de correo electrónico para amigos.

+7

Gracias. Ahora está claro! No hay manera de conseguir a amigos correos electrónicos !! f ** k! – skozlovf

+0

¿Encontraste alguna otra manera de obtener el correo electrónico de un amigo? Aún estoy buscando lo mismo. ¿Hay que pedir para cualquier permiso añadido a facebook ?? – rAzOr

-1

con el permiso extendido puede especificar a través del alcance atributo, al obtener el token de acceso

Ejemplo:

https://graph.facebook.com/oauth/authorize? 
    client_id=...& 
    redirect_uri=http://www.example.com/callback& 
    scope=email 
+0

Pero ya Alcance del uso = publish_stream, offline_access, correo electrónico, mientras https://graph.facebook.com/oauth/authorize – skozlovf

+0

, entonces solo puede acceder a él en https://graph.facebook.com/username ... si no está allí, no está disponible. o el usuario no ha otorgado, el usuario puede permitir parcialmente su alcance explícitamente o cambiar su correo a un correo electrónico proxy. –

+0

muy extraño .. Comprobé la configuración de mi aplicación y la de mi amigo: el acceso al correo electrónico está permitido, por lo que debe mostrar el correo electrónico, ¿no? ¿Qué pasos adicionales pueden hacer yo y mis amigos? – skozlovf

0

que debe haber alguna manera lo demás, ¿cómo JanRain lo hace? http://www.janrain.com/products/engage/invite-friends

+0

Hay una API especial de Facebook para invitar a amigos y Facebook hace el envío por correo electrónico. Usted no recibe los mensajes de correo electrónico amigos. –

+0

@BillLeeper ¿Cuál es el nombre de esa API. U puede proporcionar un enlace a favor documentación. – shashwat

+0

siento pedir una solución y no proporcionarla. Fue una locura hacerlo, y probablemente ya no funciona de la manera en que lo hice. Creo que mi método ha sido eliminado de la API de Facebook. –

0

Creo que Facebook no permite el uso de ID de correo electrónico de amigos; al menos, eso es lo que mi investigación me dice. @helloworld: ¿Quién le dijo que janrain obtiene los id de correo electrónico de los amigos de los usuarios?

Cuestiones relacionadas