我创建了一个 Visual Studio ASP.NET MVC 4 Internet 应用程序模板项目。我立即进入 AuthConfig 类并取消注释这一行:
//AuthWebSecurity.RegisterGoogleClient();
然后我运行了应用程序。我点击了“登录”,然后点击了“谷歌”。我被重定向到我登录的 Google,然后重定向到 Account 控制器中的“ExternalLoginCallback”操作。在调试器中,这些行被执行:
AuthenticationResult result = OAuthWebSecurity.VerifyAuthentication(Url.Action("ExternalLoginCallback", new { ReturnUrl = returnUrl }));
if (!result.IsSuccessful)
{
return RedirectToAction("ExternalLoginFailure");
}
无论我做什么,结果变量的 IsSuccessful 属性都设置为 false。我只是想知道我在使用提供的模板时做错了什么?我不知道如何从 OAuthWebSecurity.VerifyAuthentication 检索错误消息以确定发生了什么。
任何帮助表示赞赏!
注意:我已尝试更新所有 NuGet 包。我也尝试过 Microsoft(因为重定向 url + localhost 问题而没有工作)和 LinkedIn(没有工作,不确定为什么但收到错误的请求 400 错误)OAuth 客户端。