【问题标题】:How do I get a user's email address using LinkedIn's new api call?如何使用 LinkedIn 的新 api 调用获取用户的电子邮件地址?
【发布时间】:2012-08-19 11:34:20
【问题描述】:

根据这些文档,我应该请求“电子邮件地址”:https://developer.linkedin.com/documents/profile-fields

我假设这与任何其他用户数据调用一样工作,因此我将通过 oauth 过程来获取正确的令牌,然后执行以下操作(在 Python 中使用 oauth2 库):

In [30]: url='http://api.linkedin.com/v1/people/~:(id,first-name,industry,email-address)'
In [31]: resp, content = client.request(url, 'GET')
In [32]: content
Out[32]: '<?xml version="1.0" encoding="UTF-8" standalone="yes"?>\n<person>\n  <id>t0tImGn-yi</id>\n  <first-name>Jeff</first-name>\n  <industry>Computer Software</industry>\n</person>\n'

如您所见,电子邮件地址不在回复中。

我还应该注意,我尝试使用以下命令在 requestToken 请求中指定范围:

request_token_url = 'https://api.linkedin.com/uas/oauth/requestToken? scope=r_basic_profile+r_emailaddress'

更新:我在这里找到了其他文档:https://developer.linkedin.com/documents/authentication#toggleview:id=python 这似乎暗示我应该尝试通过访问此处访问电子邮件: resp, content = client.request('http://api.linkedin.com/v1/people/~/email-address', 'GET')

在这种情况下,内容返回“null”

【问题讨论】:

  • 您是否使用新的 API 密钥尝试了上述调用?在此范围权限启动之前发布的 API 密钥,不支持请求其他权限,例如电子邮件地址。
  • 这似乎是怎么回事。我请求了新密钥,现在我至少在他们的网站上获得了 oauth 的最新身份验证屏幕。我仍然没有收到电子邮件,但我需要检查并确保这次不是我的错。谢谢保罗。

标签: python linkedin socialauth


【解决方案1】:

您需要获取新的 API 密钥,然后在他们进行迁移时发出请求,请参阅 this

【讨论】:

    【解决方案2】:

    写“emailAdress”而不是“email-adress”

    url='http://api.linkedin.com/v1/people/~:(id,first-name,industry,**emailAdress**)'
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-11-19
      • 2018-08-01
      • 2014-06-01
      • 2015-01-13
      • 2023-03-05
      • 2012-05-10
      • 1970-01-01
      相关资源
      最近更新 更多