如何使用ASP.NET MVC 5和OWIN获取Facebook Timeline图像
本文关键字:获取 OWIN Facebook Timeline 图像 何使用 ASP NET MVC | 更新日期: 2023-09-27 18:28:59
我正在用ASP.NETMVC 5开发一个网站,并且是.NETMVC的新手。在该网站上,我必须显示用户的时间轴图像。到目前为止,我使用OWIN登录,并使用JavaScript API访问图像。有没有办法在不使用JavaScript的情况下使用ASP.NET MVC 5获取用户图像?。
var x = new FacebookAuthenticationOptions();
x.Scope.Add("email");
x.Scope.Add("user_photos");
x.Scope.Add("publish_actions");
x.Scope.Add("user_posts");
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, "XmlSchemaString", "Facebook"));
}
}
};
x.SignInAsAuthenticationType = DefaultAuthenticationTypes.ExternalCookie;
app.UseFacebookAuthentication(x);
与使用Facebook画布相同。但是,我需要网站。请告诉我这条路是正确的。提前谢谢。
您可以使用Facebook SDK for.Nethttp://facebooksdk.net/docs/使用您添加到声明中的访问令牌,通过FacebookClient进行进一步的Graph Api调用。文档中的代码片段:
var fb = new FacebookClient("access_token");
dynamic me = fb.Get("me");
var id = me.id;
var name = me.name;