2009-07-27 19 views

risposta

10

La risposta è no, Facebook non fornisce questa funzionalità. Facebook cerca di proteggere la privacy dei propri utenti, pertanto gli indirizzi email degli utenti non sono esplicitamente disponibili.

L'unico modo per inviare un messaggio di posta elettronica a un utente è prompt them per concedere all'utente autorizzazioni di posta elettronica estese tramite Facebook prompt. Se ti concedono l'autorizzazione, puoi utilizzare il metodo API notifications.sendEmail oppure eseguire una query sulla tabella user per il campo proxied_email e inviare loro un'email tramite il sistema Facebook's Email Proxy.

+0

grazie signore. :-) –

1

Non penso che sia possibile farlo tramite FQL. Come un esercizio accademico potrebbe essere necessario usare CURL e poi avere un servizio CAPTCHA-analisi

vedi anche: http://www.25hoursaday.com/weblog/2007/08/21/FacebookTheSocialGraphRoachMotel.aspx

e

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

di plug-in di corso Christopher Finke:

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

+1

L'utilizzo dell'analisi di CURL e CAPTCHA per ovviare a questa restrizione potrebbe far sì che l'app venga bannata alla fine. – ceejayoz

+0

Non funzionerebbe comunque, in quanto non c'è modo di determinare anche quale potrebbe essere l'indirizzo email di un utente. – zombat

+0

@ceejayoz è per questo che ho accennato al fatto che si tratta di uno studio accademico;) @zombat Penso che fb memorizzi le e-mail in un file immagine, quindi se puoi ottenere quel file e farlo analizzare (presumo che il CAPTCHA fb sia stato interrotto) : P – pageman

4

modifica: Modificato con il nuovo sistema di permessi dell'API Graph. Gli utenti ora hanno la possibilità di utilizzare l'indirizzo proxymail, ma sembra rivelare la vera e-mail per impostazione predefinita.

Le chiamate API di Facebook non rivelano mai gli indirizzi e-mail degli utenti.

Anche quando un utente concede espressamente il permesso di inviarle via e-mail, è un indirizzo di posta elettronica proxy che non rivela il loro vero indirizzo - qualcosa come apps+###########.#########.######################@proxymail.facebook.com.

Vedere http://wiki.developers.facebook.com/index.php/Proxied_Email per dettagli.

+0

grande informazione. molte grazie. –

0

La funzionalità è disponibile, il nuovo SDK di Facebook per iOS ha esteso i permessi dove u può dichiarare le Autorizzazioni per concedere l'accesso durante l'accesso da parte dell'utente, quando l'accesso concesso si può accedere al loro ID e-mail,

come questo, ho recuperato,

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

Ora è possibile ottenere l'e-mail utente di Facebook.

Problemi correlati