OAuth facebook登录无法正常工作

时间:2016-03-22 09:54:59

标签: c# asp.net facebook facebook-graph-api facebooksdk.net

我使用asp.net MVC webapi,并且已经使用facebook登录了很长时间。但突然出现如下错误:

Not Logged In: You are not logged in. Please login and try again.

以下代码: Startup.Auth.cs

FacebookAuthenticationOptions options = new FacebookAuthenticationOptions();
options.AppId = ConfigurationManager.AppSettings["FBappId"];
options.AppSecret = ConfigurationManager.AppSettings["FBappSecret"];
string[] FBScopes = ConfigurationManager.AppSettings["FBScope"].ToString().Split(new string[] { "," }, StringSplitOptions.RemoveEmptyEntries);

foreach (string s in FBScopes)
{
    options.Scope.Add(s);
}

Microsoft.Owin.Security.Twitter.Messages.RequestToken request = new Microsoft.Owin.Security.Twitter.Messages.RequestToken();

options.Provider = new FacebookAuthenticationProvider()
{
    OnAuthenticated = async context =>
    {
        //Get the access token from FB and store it in the database and
        //use FacebookC# SDK to get more information about the user
        context.Identity.AddClaim(
            new System.Security.Claims.Claim("FacebookAccessToken", context.AccessToken));
    }
};
options.SignInAsAuthenticationType = DefaultAuthenticationTypes.ExternalCookie;
//options.SignInAsAuthenticationType = Microsoft.Owin.Security.AppBuilderSecurityExtensions.GetDefaultSignInAsAuthenticationType(app);
app.UseFacebookAuthentication(options);

到目前为止它工作正常并且没有出现过这样的错误。有人知道为什么会这样吗?

Facebook是否有任何安全更改?

请告诉我。

2 个答案:

答案 0 :(得分:1)

我有同样的问题,在我的情况下,解决方案是在Facebook中删除android应用程序。

enter image description here

答案 1 :(得分:0)

就我而言,它是“有效的OAuth重定向URI”属性,该属性设置为我之前设置的旧重定向URI。

一旦我将其更改为当前端口,它就能正常工作。

此设置位于“Products => Facebook登录”部分。