2010-10-08 5 views
11

Il ya des questions sur le StackOverflow sur facebook & email, mais après les avoir lu, j'ai toujours un problème avec la récupération des e-mails des utilisateurs.Facebook Graph API et l'email de l'ami

Notre application est implémentée sur Flex et utilise l'API REST. Et auparavant, il utilisait notifications.sendEmail. L'application a les autorisations publish_stream et email (vérifiées avec users.hasAppPermission).

J'ai essayé users.getInfo pour obtenir l'adresse mail proxied. Mais cette fonction ne retourne pas à l'adresse e-mail de l'ami ..

Ensuite, j'ai effectué le test suivant en utilisant l'API graphique et le navigateur Web:

  1. Ouvert le lien suivant pour autorisation avec des autorisations étendues:

    https://graph.facebook.com/oauth/authorize?client_id=[app_id] & scope = publish_stream, offline_access, email & redirect_uri = http: //www.facebook.com/connect/login_success.html

Il a renvoyé le code pour récupérer access_token

  1. oppened le lien suivant pour récupérer access_token

graph.facebook.com/oauth/access_token?client_id=[app_id] & client_secret = [secret] & code = [code] & redirect_uri = http: //www.facebook.com/connect/login_success.html

Il a renvoyé access_token. Et maintenant je peux utiliser GraphAPI.

  1. Testée avec mon compte

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

Ok. Il a renvoyé mon emal.

  1. Testée avec mon ami

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

Et est ici aucun champ e-mail!

Mes questions sont

Où est-ce que je me trompe? Est-il possible d'obtenir l'email d'un ami via Facebook API (GraphAPI ou API REST)?

Merci.

+0

vous pouvez obtenir plus d'amuse-gueules ici: http://forum.developers.facebook.net/viewforum.php?id=52 –

+0

Je demande là aussi, thx. – skozlovf

Répondre

28

permission e-mail permet d'accéder à votre e-mail uniquement.

Si vous regardez la extended permissions page, il dit:

De même, pour protéger la vie privée des utilisateurs qui ne sont pas explicitement autorisés votre demande, votre demande ne pourra accéder aux informations de profil de base sur un les amis de l'utilisateur, comme leurs noms et leurs images de profil. Si votre application a besoin d'accéder à d'autres données sur les amis d'un utilisateur pour activer la fonctionnalité sociale, vous devrez demander certaines des autorisations d'amis spéciales répertoriées ci-dessous.

Et si vous regardez le tableau ci-dessous, il est indiqué "non disponible" pour l'autorisation d'envoyer des courriels à des amis.

+7

Merci. Maintenant, il est clair! Il n'y a aucun moyen de recevoir des courriels amis !! f ** k! – skozlovf

+0

Avez-vous trouvé une autre façon d'obtenir l'email de votre ami? Même suis à la recherche de la même chose. Doit-on demander pour toute autorisation ajouté à facebook ?? – rAzOr

-1

Seulement avec la permission prolongée vous pouvez spécifier via le attribut scope, lors de l'obtention du jeton d'accès

Exemple:

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

Mais j'utilise déjà scope = publish_stream, offline_access, e-mail tout en https://graph.facebook.com/oauth/authorize – skozlovf

+0

alors vous pouvez simplement y accéder à https://graph.facebook.com/username ... si elle n'est pas là, il n'est pas disponible. ou l'utilisateur n'a pas accordé, l'utilisateur peut explicitement autoriser en partie votre portée ou changer son courrier à un email de proxy. –

+0

très étrange .. J'ai vérifié mes paramètres d'application de mon ami et - l'accès e-mail est autorisé, il doit donc montrer l'email, non? Quelles mesures supplémentaires me et les friens peuvent faire? – skozlovf

0

il devrait y avoir une façon autre comment JanRain il le fait? http://www.janrain.com/products/engage/invite-friends

+0

Il y a un api spécial Facebook pour inviter des amis et Facebook fait l'emailing. Vous ne recevez pas les e-mails d'amis. –

+0

@BillLeeper Quel est le nom de cette api. Can u s'il vous plaît indiquer le lien vers documentation. – shashwat

+0

désolé de débiter une solution et fournit pas réellement. il était fou fou à faire, et ne peut-être je pense que la façon dont je fonctionne plus quand même l'ai fait. ma méthode a été retiré de l'api facebook. –

0

Je pense que Facebook ne permet pas d'obtenir des identifiants d'e-mail d'amis; au moins, c'est ce que mes recherches me disent. @helloworld: Qui vous a dit que janrain recevait les identifiants de ses amis?

Questions connexes