使用 JavaScript 和 REST API 检索 LinkedIn 个人资料图片

Retrieve LinkedIn Profile Picture Using JavaScript with REST API

我目前正在我的 Web 应用程序上实现 LinkedIn 授权和登录功能,并且正在使用 linkedin JavaScript 开发人员示例代码:

<script type="text/javascript" src="//platform.linkedin.com/in.js">
    api_key: YOUR_API_KEY_HERE
    authorize: true
    onLoad: onLinkedInLoad
</script>

<script type="text/javascript">

    // Setup an event listener to make an API call once auth is complete
    function onLinkedInLoad() {
        IN.Event.on(IN, "auth", getProfileData);
    }

    // Handle the successful return from the API call
    function onSuccess(data) {
        console.log(data);
    }

    // Handle an error response from the API call
    function onError(error) {
        console.log(error);
    }

    // Use the API call wrapper to request the member's basic profile data
    function getProfileData() {
        IN.API.Raw("/people/~").result(onSuccess).error(onError);
    }

</script>

这段代码 returns 名字、姓氏、标题(职位描述)和 id 使用 getProfileData() 方法中的 raw() 方法。

我现在正在尝试获取用户个人资料图片,以便在我的应用程序中使用,但无法弄清楚如何使用我已有的代码来做到这一点。 linkedIn 开发者网站提供了以下示例,说明如何使用 REST api:

https://api.linkedin.com/v1/people/~:(picture-url)?format=json

我从未使用过 REST API 所以我无法弄清楚如何将此代码实现到我现有的段中。我如何使用我现有的 JS 代码向此 REST API 代码发出请求,以便 prorgam 可以获得文本数据和用户图像?

如果您只想检索个人资料图片,则不需要 JSON 格式。只需使用

function onSuccess(data) {
     String imageUrl = "http://api.linkedin.com/v1/people/"+data.id+"/picture-url";
     //i.e. $("img").attr("src",imageUrl);
}

将{user-id}替换为实际的用户id。通过授权即可访问