2009-05-16 7 views
1

J'espère que cela est autorisé, mais j'ai un certain nombre de questions concernant Facebook Connect, je ne suis pas sûr de la façon dont je devrais aborder la mise en œuvre. Je travaille sur un service de type de musique en direct et j'ai actuellement un enregistrement d'utilisateur, etc. Si je devais implémenter Facebook Connect en parallèle, serais-je toujours capable d'envoyer un email aux utilisateurs de Facebook Connect comme s'ils étaient dans ma base de données?Facebook Connect Questions de mise en œuvre

Aussi, serait-il possible de permettre aux utilisateurs ayant Facebook de "lier" leurs comptes une fois enregistrés afin de leur donner les avantages du partage via Facebook et d'inviter des amis tout en ayant un utilisateur enregistré sur mon système .

J'ai essayé de lire les réponses aux questions ci-dessus mais ce que j'ai trouvé est assez ambigu.

Merci, dans l'attente de votre point de vue.

Répondre

3

Le processus de documentation de Facebook est très médiocre, alors ne vous sentez pas mal d'avoir du mal à démarrer. Leur approche de type wiki de la documentation sans documents officiels réels a tendance à laisser le «flux de processus» difficile à saisir, et nécessite de rassembler des parties d'un tas de documents dispersés au hasard.

Facebook a l'obligation de protéger la vie privée, de sorte qu'il ne met jamais l'adresse e-mail réelle d'un utilisateur à la disposition des développeurs d'applications, via Connect ou des applications normales. Ils ont un système de messagerie par proxy que vous pouvez utiliser, cependant, vous devez obtenir l'autorisation explicite d'un utilisateur afin de les envoyer par courrier électronique. Il y a un document décent sur proxied email here. Vous pouvez obtenir la permission en l'invitant; il y a plusieurs méthodes pour le faire dans ce document. En ce qui concerne les liens entre Facebook et les comptes locaux, ce serait définitivement la voie à suivre. Une fois qu'un utilisateur Connect se connecte, vous voulez stocker ce fait pour cet utilisateur afin que vous puissiez lui fournir la fonctionnalité spécifique à Facebook. Je créerais simplement un compte d'utilisateur normal dans la base de données pour chaque nouvel utilisateur connecté, avec son propre identifiant local, de sorte que vous n'ayez pas à gérer de manière spécifique deux types de comptes d'utilisateurs différents sur le site. Cela étant dit, le compte doit évidemment être marqué comme un compte d'utilisateur Facebook (j'utilise une colonne externalId dans la table de mes utilisateurs), et toute partie du site qui repose sur des informations que vous pourriez avoir localement aurait à gérer le Facebook aspect correctement (comme en utilisant l'email proxied au lieu d'email normal). Pour les utilisateurs existants, vous pouvez organiser un "lien de compte" en ayant un processus par lequel ils se connectent à FB Connect après leur connexion au site, et vous pouvez le détecter et simplement ajouter leur ID FB à vos utilisateurs table. Après cela, ils pourraient se connecter via Connect à l'avenir, ou par le biais de votre processus normal. Je n'ai jamais fait ça, mais ça devrait être possible.

Si vous écrivez le code de gestion de compte de manière assez générique, votre site pourra fonctionner correctement quel que soit le type d'utilisateur que vous lui lancerez.

+0

Même réponse à une question précédente que j'ai posée hier, toujours très utile et utile. Mais lorsque je stocke l'ID utilisateur dans la base de données, il renvoie une erreur indiquant que ce que je renvoie n'est pas un objet. FB Connect génère un objet, je ne sais pas comment je le réplique. – James