无法仅在.net中的初始注册和外部登录确认时检索facebook令牌

无法仅在.net中的初始注册和外部登录确认时检索facebook令牌,.net,facebook,.net,Facebook,我的.net应用程序在facebook上发布了一张照片。在初次登录和注册之后,它在以后的每次使用中都能正常工作。用户除了使用facebook登录外,不能以任何其他方式注册或登录 在所有登录上(除第一次登录外),用户登录并调用externallogincallback方法,然后调用StoreFacebookAuthToken和SignInAsync方法并存储令牌,这样就可以了 但在第一次登录和注册时,用户单击facebook登录->用户输入一个电子邮件地址以与fb帐户关联,然后调用External

我的.net应用程序在facebook上发布了一张照片。在初次登录和注册之后,它在以后的每次使用中都能正常工作。用户除了使用facebook登录外,不能以任何其他方式注册或登录

在所有登录上(除第一次登录外),用户登录并调用externallogincallback方法,然后调用StoreFacebookAuthToken和SignInAsync方法并存储令牌,这样就可以了

但在第一次登录和注册时,用户单击facebook登录->用户输入一个电子邮件地址以与fb帐户关联,然后调用ExternalLoginConfirmation

为了在初次登录时获得facebook令牌,我将StoreFacebookAuthToken和SignanAsync放入ExternalLoginConfirmation中,但随后我无法发布照片-我假设访问令牌未被存储,但我无法确切找出原因

我还没有发布所有的代码b/c,它相当长,但任何想法都将是伟大的。Thx

Startup.auth.cs

var facebookOptions = new Microsoft.Owin.Security.Facebook.FacebookAuthenticationOptions
{
  AppId = ConfigurationManager.AppSettings["Facebook_AppId"],
  AppSecret = ConfigurationManager.AppSettings["Facebook_AppSecret"],

 SignInAsAuthenticationType = DefaultAuthenticationTypes.ExternalCookie,
 SendAppSecretProof = true
 };
ExternalLoginCallBack

    public ExternalLoginCallback(string returnUrl)    
    {
    case SignInStatus.Success:
    var user = await UserManager.FindAsync(loginInfo.Login);

    if (user != null)
    {
      await StoreFacebookAuthToken(user);
      await SignInAsync(user, isPersistent: false);                               
    }

    return RedirectToAction("Upload", "Home");

    }
    }
外部登录确认

public ExternalLoginConfirmation

    {

     if (result.Succeeded)
    {
       result = await UserManager.AddLoginAsync(user.Id, info.Login);
       if (result.Succeeded)
      {
       // await SignInManager.SignInAsync(user, isPersistent: false, rememberBrowser: false);
          await StoreFacebookAuthToken(user);
          await SignInAsync(user, isPersistent: false);

          return RedirectToAction("Upload", "Home");                 
      }
     }

我把问题解决了。你介意把答案贴在这里吗?这可以帮助其他开发者更新原始帖子。你能回复原始帖子吗?它会更干净。实际上我没有确切的答案。老实说,我甚至不知道它是如何让我发布照片的,因为我从来没有能够从控制器获得fb访问令牌。这是我仍在努力解决的问题。我不知道如何从索赔中获得fb代币:CheersI解决了这个问题。你介意将解决方案发布在这里作为答案吗?这可以帮助其他开发者更新原始帖子。你能回复原始帖子吗?它会更干净。实际上我没有确切的答案。老实说,我甚至不知道它是如何让我发布照片的,因为我从来没有能够从控制器获得fb访问令牌。这是我仍在努力解决的问题。我不知道如何从声明中获得fb代币:干杯