c# - 如何在 ASP.NET MVC 5 中获取外部登录的电子邮件地址

标签 c# asp.net asp.net-mvc asp.net-identity

我们在 MVC 5 中使用 Asp.Net Identity 来允许用户使用他们的社交媒体帐户登录。

var loginInfo = await AuthenticationManager.GetExternalLoginInfoAsync();

我们使用上面的 API 来检索帐户信息,但是除 Facebook 之外的所有帐户的 loginInfo.Email 都是空值,我们如何获取这两个社交帐户的电子邮件地址:

  • 微软账户
  • 推特

最佳答案

我相信这些供应商都没有传播用户电子邮件作为声明。您将不得不直接查询他们的 API 以获取电子邮件地址。

要从 Microsoft 帐户获取电子邮件地址,请戳 the /me endpoint

Twitter 不允许您检索用户电子邮件地址。这里的建议(others 也以结束)是从您的应用程序中向用户询问电子邮件地址。

关于c# - 如何在 ASP.NET MVC 5 中获取外部登录的电子邮件地址,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25357673/

相关文章:

c# - 尝试在Visual Studio 2013/Windows 8.1预览版中编译C#Windows运行时(WinMD)组件时出错

c# - 为什么 Visual Studio 的临时文件中仍引用旧项目名称

javascript - 未捕获的类型错误 : Cannot read property 'AutoFill' of undefined

c# - 使用 .NET CodeDom 代码生成时如何自定义自动生成的注释?

asp.net - 在发布 .Net Web 应用程序期间,使应用程序对用户不可用的最佳方法是什么?

jquery - IE 中的实时变化

jquery - 如何提供一个使用 ASP.NET MVC 和 jQuery(不是自动完成)实时过滤结果的文本框?

ASP.Net 5 配置依赖注入(inject)和静态 Controller 构造函数

c# - ASP.NET MVC (.NET 4.5.1) 中的 X-Frame-Options 错误

c# - 使用 System::DateTime 参数调用 C++/CLI 方法需要 'ValueType' 作为参数?