MVC 4 DotNetOpenAuth - LinkedIn:不抓取Email地址。

问题描述 投票:3回答:1

我正在使用内置的MVC 4 OAuthWebSecurity来允许对LinkedIn进行认证。

在我的LinkedIn API密钥上,我添加了r_emailaddress权限。

enter image description here

问题是由于某些原因,电子邮件地址没有被填充到结果对象的ExtraData字典中。

AuthenticationResult result = OAuthWebSecurity.VerifyAuthentication(Url.Action("ExternalLoginCallback", new { ReturnUrl = returnUrl }));

enter image description here

有什么办法可以让我利用内置的LinkedIn提供商,但检索到电子邮件地址?

更新原来LinkedIn内置的DotNetAuthOpenAuth提供商并没有填充电子邮件地址字段...。此外,用户名字段也会被填充用户的全名.所以,至少可以说是有点奇怪。

总之,我找到了这个链接 http:/deepindera.blogspot.com201308aspnet-mvc-oauth-linkedin-email-problem.html。,它向你展示了如何为DotNetAuth创建一个自定义的LinkedIn客户端。

asp.net-mvc-4 linkedin dotnetopenauth
1个回答
0
投票

电子邮件地址从配置文件中删除,只能在单独的请求中获得。https:/docs.microsoft.comen-uslinkedinsharedintegrationspeopleprimary-contact-api#retrieve-email-address。

你现在也应该知道,有些用户没有分配任何电子邮件地址。

如果被认证的用户是通过电话号码注册的,并且之前从未在LinkedIn账户中添加任何主要的电子邮件地址,那么API调用将返回空响应体。type的值是区分大小写的,在这种情况下只能是EMAIL。

© www.soinside.com 2019 - 2024. All rights reserved.