Facebook身份验证AuthenticationManager.GetExternalLoginInfoAsync()突然返回NULL

cry*_*yxn 1 authentication asp.net-mvc facebook facebook-graph-api owin

public async Task<ActionResult> ExternalLoginCallback(string returnUrl)
        {


            var loginInfo = await AuthenticationManager.GetExternalLoginInfoAsync();
            if (loginInfo == null) { return RedirectToAction("Login"); }
            // Sign in the user with this external login provider if the user already has a login
            var result = await SignInManager.ExternalSignInAsync(loginInfo, isPersistent: false);
Run Code Online (Sandbox Code Playgroud)

所以在我的ExternalLoginCallback方法AuthenticationManager.GetExternalLoginInfoAsync()中工作得很好,然后突然几天前它不再做任何事情并返回NULL,导致整个"注册Facebook"进程被跳过,将用户重定向到登录页面.

我有一个单独的ASP.NET MVC5项目,我只是用Facebook Graph API来玩,当我回到它时(我在2周前离开它,注册/登录Facebook在这个项目上工作得很好)它有同样的问题,它返回null!将用户重定向到登录页面.

有可能我的Facebook应用程序有什么东西吗?或他们的API?我没有通过应用程序审查3次(在代码中有一些问题),把它放回到开发模式试图解决它现在它甚至没有达到上一个问题,它停在AuthenticationManager.GetExternalLoginInfoAsync()那里我无法理解什么是去因为我上周没有这个问题.

这是ExternalLogin方法:

public ActionResult ExternalLogin(string provider, string returnUrl)
        {

            ControllerContext.HttpContext.Session.RemoveAll();

            return new ChallengeResult(provider, Url.Action("ExternalLoginCallback", "Account", new { ReturnUrl = returnUrl }));
        }
Run Code Online (Sandbox Code Playgroud)

我添加ControllerContext.HttpContext.Session.RemoveAll();了一个建议,我在stackoverflow上找到了它,但似乎没有做任何事情.

cry*_*yxn 10

不得不将Microsoft Owin软件包更新到3.1.0-rc1,现在它可以工作了.(在包管理器的更新选项卡中包含"include prerelease")