2009-07-27 11 views

Respuesta

10

La respuesta es no, Facebook no proporciona esta funcionalidad. Facebook intenta proteger la privacidad de sus usuarios y, por lo tanto, las direcciones de correo electrónico de los usuarios no están explícitamente disponibles.

La única forma de enviar un correo electrónico a un usuario es prompt them para otorgarle permisos extendidos de correo electrónico a través de Facebook prompt. Si le conceden el permiso, puede utilizar el método notifications.sendEmail API o consultar la tabla user para el campo proxied_email, y enviarles un correo electrónico a través del sistema Facebook's Email Proxy.

+0

gracias señor. :-) –

1

No creo que pueda hacer esto a través de FQL. como un ejercicio académico puede que tenga que utilizar CURL y luego tener un servicio CAPTCHA análisis

ver también: http://www.25hoursaday.com/weblog/2007/08/21/FacebookTheSocialGraphRoachMotel.aspx

y

http://weblogs.mozillazine.org/gerv/archives/2007/09/facebook_imagetoemail.html

del plug-in del curso Christopher Finke:

http://www.chrisfinke.com/2007/09/11/convert-facebook-e-mail-images-to-actual-e-mail-links/

+1

El uso de análisis cURL y CAPTCHA para evitar esta restricción probablemente hará que su aplicación se bloquee eventualmente. – ceejayoz

+0

No funcionaría de todos modos, ya que no hay manera de determinar cuál podría ser la dirección de correo electrónico de un usuario. – zombat

+0

@ceejayoz es por eso que mencioné que es una academix exerices;) @zombat Creo que fb almacena los correos electrónicos en un archivo de imagen, así que si puede obtener ese archivo y hacer que se analice (supongo que se ha roto el CAPTCHA fb) : P – pageman

4

editar: Esto cambió con el sistema de permisos de la API gráfica más nuevo. Los usuarios ahora tienen la opción de usar la dirección de proxymail, pero parece revelar el verdadero correo electrónico de forma predeterminada.

Las llamadas a la API de Facebook no revelan las direcciones de correo electrónico de los usuarios, nunca.

Incluso cuando un usuario específicamente le concede permiso para enviarlas por correo electrónico, es una dirección de correo electrónico proxy que no revela su dirección verdadera, algo así como apps+###########.#########.######################@proxymail.facebook.com.

Ver http://wiki.developers.facebook.com/index.php/Proxied_Email para más detalles.

+0

gran pieza de información. muchas gracias. –

0

La funcionalidad está disponible, el nuevo SDK facebook ios ha extendido permisos en donde te puedes declarar los permisos para permitir el acceso al iniciar la sesión en el usuario, cuando el acceso concedido que pueden acceder a su ID de correo electrónico,

como este, He buscado,

 _permissions = [[NSArray arrayWithObjects: 
        @"publish_stream",@"email", @"offline_access",nil] retain]; 
     NSString *emailUsr = [result objectForKey:@"email"]; 

Ahora puede obtener el correo electrónico de usuario de Facebook.

Cuestiones relacionadas