我是另一个 MVC 假人,并试图为我即将进行的项目制定外部登录。我正在使用 VS2013 附带的默认 MVC 模板。按照OWIN 教程中所述的确切步骤进行操作后。我遇到的问题是,当用户从 Google 或 Facebook 或任何其他外部帐户登录时,他不希望再次输入他的信息。我找到的用于通过 Facebook 和 Google 登录的代码,它只是获取无用的用户名。我的意思是我知道它仍然可以工作,但是如果我想获得 facebook 已经告诉用户我将访问的基本信息怎么办。这是我登录成功后得到的回复。有没有办法使用它来获取基本信息。
补充:我还包括了来自 Nuget 的 Facebook 包,并且能够通过以下代码获取一些信息。现在问题归结为,我如何要求用户提供更多信息,而不仅仅是普通信息,例如代表他发帖、使用这个 OWIN 的库获取帖子等。
var loginInfo = await AuthenticationManager.GetExternalLoginInfoAsync();
if (loginInfo.Login.LoginProvider.ToLower() == "facebook")
{
var accessToken = "something";
var client = new FacebookClient(accessToken);
dynamic me = client.Get(loginInfo.DefaultUserName);
}