2011-11-23 3 views
0

J'essaie de relier nos produits avec le plugin Facebook Login. Il mentionne l'attribut data-perms pour obtenir des données sur l'utilisateur, pour notre propre usage (ie nous pouvons créer un compte utilisateur dans notre base de données.) Je sais, évidemment, nous ne pouvons pas obtenir le mot de passe, mais je me demande quels attributs Les seuls que je peux trouver sont email et user_checkins Est-ce que quelqu'un sait quelles sont les autres options? Je l'ai googlé pendant un moment, mais je ne trouve pas de liste définitive ou quoi que ce soit. seule la documentation que j'ai trouvée est http://developers.facebook.com/docs/guides/web/#login, qui ne mentionne que les deux champs ci-dessusQuelles sont les options disponibles avec Facebook-perms?

Comment puis-je accéder à l'information une fois qu'ils sont connectés? Je suis toujours en train de faire des recherches, mais si quelqu'un peut répondre rapidement à ce sujet,

Edit: Je viens de trouver un lis apparemment définitif t des données disponibles: http://developers.facebook.com/docs/reference/api/user/

Cordialement, Richard

+0

https://developers.facebook.com/docs/authentication/permissions/ liste les différentes permissions et les divise en catégories aussi – Igy

Répondre

0

Lors de l'extraction des données sur un utilisateur de Facebook que vous utilisez soit API graphique ou FQL, API graphique est la plus simple de ces deux. Pour explorer l'API graphique, vous pouvez utiliser Facebook's Graph Explorer. En cliquant sur le bouton "Get Access Token" dans l'explorateur vous montre toutes les différentes "permissions spéciales" disponibles.

Vous pouvez trouver la documentation sur les différentes fonctionnalités du graphe Facebook et comment travailler serveur à serveur avec Facebook here.

Si vous êtes plus intéressé par l'extraction de l'information du côté client, vous devriez regarder le JavaScript SDK documentation.

Pour accéder aux données sur l'utilisateur après avoir connecté, vous pouvez tout simplement faire un appel API à:

https://graph.facebook.com/me?access_token=THETOKENYOUGOTFROMFACEBOOK

Ce récupère les informations sur l'utilisateur qui le jeton appartient.

0

Il semble que vous n'utilisiez pas OAuth 2.0, il est conseillé d'utiliser la nouvelle implémentation dès que possible. Et si vous le faites, vous devez remplacer data-perms par data-scope et la liste des "autorisations" disponibles peut être trouvée here.

Aussi il semble que vous êtes un peu confus ici, ce champ signifie que l'utilisateur accorde à votre application une permission d'accéder à ces données ... cela ne signifie pas que le plugin de connexion va le retourner!
Par exemple, vous ne fournissez pas name ou first_name car ces données seront fournies une fois qu'un utilisateur autorisera votre application (même sans autorisation).

+0

Merci d'avoir signalé cela - en particulier le 2ème bit. Oui, j'ai peut-être été un peu confus, mais il semble que l'autre réponse me permettra d'obtenir l'information que je veux. Fondamentalement, notre client a demandé d'intégrer le bouton Facebook Login avec notre formulaire de connexion standard, afin que les utilisateurs puissent se connecter ou, s'ils n'ont pas de compte sur notre serveur, créer un compte en utilisant seulement les informations les plus basiques de Facebook - email, prénom , nom de famille et éventuellement d'autres détails. Nous leur attribuerions un mot de passe aléatoire, mais tant qu'ils seront connectés à Facebook, ils passeront le mot de passe si une certaine colonne ... – ClarkeyBoy

+0

... contient leur ID utilisateur FB.Nous obtiendrions l'ID utilisateur lors de l'enregistrement, à côté de l'e-mail, etc., et le placerions dans une certaine colonne afin que nous puissions relier cet ID utilisateur FB à l'ID unique de cette ligne dans la table des utilisateurs. Notez que le mot de passe aléatoire n'est utilisé qu'à des fins de sécurité: pour empêcher les utilisateurs de se connecter à des comptes sans mot de passe. – ClarkeyBoy

+0

Soyez conscient! c'est un peu plus compliqué ... et si un utilisateur existant essayait de se connecter via Facebook où il utilisait un autre e-mail? ou choisi de ne pas partager son e-mail avec vous (Facebook retournera un e-mail par proxy dans ce cas)? vous aurez deux comptes différents pour le même utilisateur! La meilleure chose à faire est de demander à l'utilisateur FB après la connexion s'il a un compte existant pour mettre le nom d'utilisateur/email et mot de passe de ce compte et faire le lien. – ifaour

Questions connexes