asp.Net   发布时间:2022-04-07  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了asp.net-mvc – 如何使用ASP.NET MVC 5和OWIN获取Facebook的第一个和最后一个值?大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我知道提供了一个“名称”字段,但我更愿意明确地访问第一个和最后一个名字。有人可以帮忙吗?我仍然围着ASP.Net MVC包围我的头。

解决方法@H_673_4@
在您的Startup.Auth.cs ConfigureAuth(IAppBuilder app)方法中,为Facebook设置以下内容:
var x = new FacebookAuthenticationOptions();
        x.Scope.Add("email");
        x.AppId = "*";
        x.AppSecret = "**";
        x.Provider = new FacebookAuthenticationProvider()
        {
            OnAuthenticated = async context =>
                {
                    context.Identity.AddClaim(new System.Security.Claims.Claim("FacebookAccessToken",context.AccessToken));
                    foreach (var claim in context.User)
                    {
                        var claimType = String.Format("urn:facebook:{0}",claim.Key);
                        String claimValue = claim.Value.ToString();
                        if (!context.Identity.HasClaim(claimType,claimvalue))
                            context.Identity.AddClaim(new System.Security.Claims.Claim(claimType,claimValue,"XmlscheR_596_11845@aString","Facebook"));

                    }

                }
        };

        x.SignInAsAuthenticationType = DefaultAuthenticationTypes.ExternalCookie;
        app.UseFacebookAuthentication(X);
        /*
        app.UseFacebookAuthentication(
           appId: "*",appSecret: "*");
         * */

然后使用它访问用户的登录信息:

var loginInfo = await AuthenticationManager.GetExternalLoginInfoAsync();

然后以下获得名字:

var firstNameClaim = loginInfo.ExternalIdentity.Claims.First(c => c.Type == "urn:facebook:first_name");

大佬总结

以上是大佬教程为你收集整理的asp.net-mvc – 如何使用ASP.NET MVC 5和OWIN获取Facebook的第一个和最后一个值?全部内容,希望文章能够帮你解决asp.net-mvc – 如何使用ASP.NET MVC 5和OWIN获取Facebook的第一个和最后一个值?所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。