我正在建立一个测试应用程序,并通过Facebook测试外部视图。
我正在使用fiddler,当我点击按钮通过facebook登录时,我得到了代码200的结果(但由于HTTPS而被锁定),但我收到了loginInfo的空值。
具体来说:
[AllowAnonymous]
public async Task<ActionResult> ExternalLoginCallback(string returnUrl)
{
var loginInfo = await AuthenticationManager.GetExternalLoginInfoAsync(); // this is null
if (loginInfo == null)
{
return RedirectToAction("Login");
}
我已经重置了我的密钥,但这不起作用。我有最新版本的Microsoft.AspNet.Identity.Owin(2.2.1)。
这是什么处理?
感谢任何帮助。
答案 0 :(得分:1)
假设您也创建了一个新的Facebook应用程序,它将在最新的Facebook Api版本上运行。由于Facebook改变了Api,默认模板似乎不再开箱即用。他们减少了默认返回的字段数量,现在必须特别要求所有其他字段。
查看以下帖子,其中包含2个可能的解决方法。
Why new fb api 2.4 returns null email on MVC 5 with Identity and oauth 2?