我正在试图弄清楚如何使用自定义OAuth2Client来请求Facebook用户的电子邮件地址,然而,我在谷歌上找到的文档严重缺乏这样做的文档。我已经在facebook应用程序上设置了权限,但我读到Microsoft的默认Facebook客户端不会请求电子邮件,唯一的方法是滚动自己的客户端。
有没有人知道有什么好的资源或代码可以展示如何通过编写自定义OAuth2Client从Facebook请求额外数据?
发布于 2012-09-07 14:48:30
在重定向到FB之前,您需要指定如下参数
var parameters = new Dictionary<string, object>();
parameters["state"] = returnUrl;
parameters["scope"] = "email";这就是获取信息的方法,因为在许多情况下,用户的电子邮件地址是隐私的,所以在这种情况下,您不会收到电子邮件
FacebookClient fbClient = new FacebookClient(accessToken);
dynamic me = fbClient.Get("/me");
FBModel f = new FBModel();//Making Model class object to pass values to it
f.Name = me.name;
f.FirstName = me.first_name;
f.LastName = me.last_name;
f.Gender = me.gender;
if (me.email != null)
{
f.Username = me.email;
f.isEmail = true;
}https://stackoverflow.com/questions/12313015
复制相似问题