任何人都可以提供一個例子如何從Facebook檢索個人資料圖片網址? 不知怎的,我不能這樣做。我可以檢索名字,姓氏,電子郵件,性別,它應該允許檢索個人資料圖片,但它不會。索賠列表中沒有圖片。 我找不到任何例子。這裏是我的代碼:問題與外部auth數據檢索使用owin
Startup.Auth.cs
var x = new FacebookAuthenticationOptions();
x.Scope.Add("email");
//x.Scope.Add("picture");
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);
代碼,我如何獲取一些數據:
var loginInfo = await AuthenticationManager.GetExternalIdentityAsync(DefaultAuthenticationTypes.ExternalCookie);
var firstNameClaim = loginInfo.Claims.First(c => c.Type == "urn:facebook:first_name");
var lastNameClaim = loginInfo.Claims.First(c => c.Type == "urn:facebook:last_name");
var gender = loginInfo.Claims.First(c => c.Type == "urn:facebook:gender");
任何想法?我用.NET的.NET SDK實現了需要的結果,但是我很好奇,如何在不使用Facebook SDK for .NET的情況下實現相同的結果。希望社區將幫助這一個。
是的,我知道這一個。但是您無法設置高度或其他參數,因爲您可以在圖形瀏覽器中進行設置。如果您編寫了自己的圖片?redirect = false,您將獲取當前用戶個人資料圖片的參數。應該有其他方法來做到這一點。 – 2014-10-18 16:03:43
http://graph.facebook.com/FACEBOOKID/picture?type=large? – 2014-10-18 16:36:57
嗯..它似乎是這個鏈接工作。但是有沒有機會在範圍內檢索URL或圖片對象就像我們正在接收名稱,姓氏,電子郵件和性別一樣? 因爲在Facebook SDK中您可以接收圖片對象或僅圖片網址 – 2014-10-18 17:12:35