Asp.net 通过.NET中间件从Facebook API获取中间名称
我试图通过使用.NET中间件(我使用ASP.NET 5,但我认为在旧版本中类似)通过Facebook进行身份验证,从Facebook API获取一些基本数据 我的名字、姓氏等方面没有问题,但我坚持要取中间名,下面是我的代码片段:Asp.net 通过.NET中间件从Facebook API获取中间名称,asp.net,facebook,Asp.net,Facebook,我试图通过使用.NET中间件(我使用ASP.NET 5,但我认为在旧版本中类似)通过Facebook进行身份验证,从Facebook API获取一些基本数据 我的名字、姓氏等方面没有问题,但我坚持要取中间名,下面是我的代码片段: app.UseFacebookAuthentication(options => { options.AuthenticationType = "Facebook"; options.SignInAs
app.UseFacebookAuthentication(options =>
{
options.AuthenticationType = "Facebook";
options.SignInAsAuthenticationType = CookieAuthenticationDefaults.AuthenticationType;
options.AppId = facebookAppId;
options.AppSecret = facebookAppSecret;
options.Scope.Add("user_birthday");
options.Scope.Add("email");
options.Notifications = new Microsoft.AspNet.Security.Facebook.FacebookAuthenticationNotifications()
{
OnAuthenticated = async (ctx) =>
{
var token = ctx.AccessToken;
var firstName = ctx.User["first_name"];
var middleName = ctx.User["middle_name"];
var lastName = ctx.User["last_name"];
}
}
}
我试图将“middle_name”添加到范围中,但它从FB引发了一个错误:
无效的作用域:中间\u名称
您应该在范围中添加
中间名
。像这样
options.Scope.Add(“中间名”)代码>
名字和姓氏可能是您获得的隐式值,对于中间名,您必须将其添加到范围中才能获得值
您应该将此添加到您创建的相应facebook应用程序的作用域中(我的意思是您正在使用相应的应用程序密钥/密码,该facebook应用程序)。那么,这会是什么错误?我将其添加到问题中,但我可以在相应的facebook应用程序中添加此作用域吗?我使用app key/secret,但我看不到有任何设置可用于请求其他作用域?首先,您可以尝试将此代码添加到现有代码中,否则您可能已在developer.facebook.com
中获得app key/secret,您在那里创建了app,我告诉您将此作用域放在那里。