首页 > 解决方案 > 某些用户的回复中缺少“emailAddress”

问题描述

我的应用程序使用linkedin 作为oauthd 登录方法。对于某些用户,当我尝试获取电子邮件地址时没有有效的响应(https://docs.microsoft.com/en-us/linkedin/shared/references/fields/basic-profile#email-fields

要求:

GET https://api.linkedin.com/v2/emailAddress?q=members&projection=(elements*(handle~))

回复:

200 {"elements":[]} 

^^^ 缺少电子邮件字段

200 {"elements":[{"handle":"urn:li:emailAddress:472511033","handle!":{"message":"Downstream service returned an empty response for URN.","status":404}}]}

好的,但是失败了?

正常响应如下所示:

200 {"elements":[{"handle~":{"emailAddress":"XXX@XXX"},"handle":"urn:li:emailAddress:XXX"}]}

linkedin 配置文件中是否有任何设置阻止请求电子邮件地址?

标签: linkedin

解决方案


我在文档中发现这与使用电话注册的新用户有关。

如果经过身份验证的用户是通过电话号码注册的,并且之前从未将任何主电子邮件地址添加到他们的 LinkedIn 帐户中,则 API 调用将返回空响应正文。type 的值区分大小写,在这种情况下只能是 EMAIL。

https://docs.microsoft.com/en-us/linkedin/shared/integrations/people/primary-contact-api#retrieve-email-address


推荐阅读