我們的Facebook登錄不能正常工作。我們收到的消息來自Facebook的開發者門戶網站:版本棄用Facebook Graph API v2.2
「應用名稱」當前訪問圖形API V2.2將達到 2年的生命週期結束於3月27日,2017年要確保平穩過渡,請將所有調用遷移到Graph API v2.3或更高版本。
要檢查您的應用是否會受此升級影響,您可以使用 版本升級工具。這將告訴你哪些呼叫(如果有的話)是 受此更改影響以及更新的 版本中的任何更換呼叫。如果您沒有看到任何呼叫,您的應用可能不會受到 此更改的影響。
您還可以使用我們的更改日誌查看所有 Graph API版本中的更改的完整列表。
我們正在使用ASP.NET MVC 5,我們正在使用或認證這樣的:今天
var facebookAuthenticationOptions = new FacebookAuthenticationOptions()
{
AppId = "****",
AppSecret = "****",
AuthenticationType = "Facebook",
SignInAsAuthenticationType = "ExternalCookie",
Provider = new FacebookAuthenticationProvider
{
OnAuthenticated = async ctx => ctx.Identity.AddClaim(new Claim(ClaimTypes.Email, ctx.User["email"].ToString()))
}
};
facebookAuthenticationOptions.Scope.Add("email");
但是,我們的登錄信息的對象,爲null在ExternalLoginCallback:
[HttpGet]
[AllowAnonymous]
[RequireHttps]
public async Task<ActionResult> ExternalLoginCallback(string returnUrl = null)
{
try
{
var loginInfo = await AuthenticationManager.GetExternalLoginInfoAsync();
if (loginInfo == null)
{
return RedirectToAction("Login");
}
... more code here...
在Facebook Dev。門戶網站我們的API的版本是2.3
我們已經測試了多種選擇,但沒有任何結果:
Access email address in the OAuth ExternalLoginCallback from Facebook v2.4 API in ASP.NET MVC 5
Why new fb api 2.4 returns null email on MVC 5 with Identity and oauth 2?
謝謝各位大大的幫助。
這裏看到的解決辦法:HTTP:// stackoverflow.com/questions/22364442/asp-net-mvc5-owin-facebook-authentication-suddenly-not-working sammy34的答案 –
@MarcHägele謝謝你在跟隨你的鏈接之後,由於sammy34的回答,我能夠解決我的問題。 – Alisson