Linkedin个人资料API与公开可用URIs的区别

4
我有一个人名和LinkedIn个人资料链接的数据库。 令人烦恼的是,LinkedIn链接没有标准格式(与Twitter不同),但通常采用以下形式: 1)http://www.linkedin.com/in/geoffroyondet 2)http://www.linkedin.com/profile/view?id=34178115 在我的网站上,我想显示人们的LinkedIn详细信息。 OAuth运行良好,对于第一种格式(如上所述),我可以成功地在我的网站上显示他们的LinkedIn数据。我使用了https://developer.linkedin.com/documents/profile-api中的“公共个人资料URL”选项。
但对于第二种格式,我遇到了问题。它作为“公共个人资料”无效,并且URL中的ID似乎不是上面链接中的“member_id”。
顺便说一下,如果我尝试将这个数字ID作为member_id使用,我会收到以下错误:
object(SimpleXMLElement)[652]
public 'status' => string '404' (length=3)
...
public 'message' => string 'Invalid member id {34178115}' (length=28)

通过对API进行探索,我发现获取字母数字ID(member_id)的唯一方法是通过成功的API调用(blah->person->id)。但是,要进行成功的API调用,我首先需要一个有效的URI。因此,这似乎是一个先有鸡还是先有蛋的情况。
您有什么建议可以通过使用上述第二个URL显示LinkedIn数据吗?
1个回答

6
看起来有两个问题需要解决:
1)技术问题。你是正确的,通过第二个URL无法使用Profile API检索用户资料,你只能通过唯一的public-profile-url、会员ID或~来检索当前用户的资料。
会员ID与查询字符串中看到的数字无关——会员ID是为每个API应用程序独特地生成的字母数字令牌,因此通过你的应用程序访问的用户A将具有不同的会员ID,而通过我的应用程序访问的同一用户A也是如此。
你是在随意检索成员资料还是试图从查看已验证用户的联系人中检索资料?你应该能够检索查看者的联系人public-profile-url,或通过People Search等方式进行检索。
2)平台指南。基本上,你只能通过代表该用户拉取信息来向观众展示有关特定LinkedIn用户的个人资料信息。这意味着,查看者已对API进行了身份验证;你没有提到这是否是这种情况,但遵守#2可能有助于解决#1。

嗨,保罗,感谢您解释“成员ID”,这让我感到困惑。我已经选择了People Search API,它会返回公共个人资料网址,以便我像链接#1一样运行。为了回答您的第二个问题,我已经让成员使用oAuth工作了。他们正在代表自己请求Linkedin数据。完成! - Adam

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接