通过电子邮件搜索用户

问题描述:

我想将我的网站用户映射到他们的Facebook帐户。由于我有他们的电子邮件,我想知道如何以编程方式找到他们的Facebook用户ID。通过电子邮件搜索用户

Outlook社会连接器做到这一点,所以我认为这是可能的。

感谢,

首先你要问到有Facebook上的用户的许可电子邮件这可以通过添加“邮件”到CanvasAuthorizer烫发来完成。所有你需要做的就是获得“我”,这将是在那个回报。

var auth = new CanvasAuthorizer(); 
auth.Perms = "email";  
if(Auth.Authorize()) 
{ 
    var fb = new FacebookClient(Auth.Session.AccessToken); 
    dynamic me = fb.Get("me"); 
    string email = me.email; 
} 
+0

嗨,JC!感谢您的回答。 我想对后台进程和所有用户执行此操作。类似: 用于db.users每个用户 \t user.FacebookId = GetFacebookIdFromEmail(user.email); 而我需要的是函数GetFacebookIdFromEmail的实现。 – Leonardo 2011-03-10 23:27:27

+0

这可以做的唯一方法是如果用户在Facebook上有公共电子邮件地址。我知道我们如何处理这个问题是,当用户第一次使用Facebook登录时,我们询问他们是否已经有账户,如果他们说是,我们要求当前登录并配对。 – JCPhlux 2011-03-11 14:49:18