无法使用 Scribe 从 Linkedin API 获取技能

Unable to get skills from Linkedin API using Scribe

我正在尝试使用 Scribe 库从 LinkedIn 获取技能信息。

一切正常。但是它无法打印出 XML 或 JSON 格式的技能。

我检查了 apigee 中的 URL: https://api.linkedin.com/v1/people/~:(id,skills)。它工作正常。所以我想知道代码有什么问题。

代码如下:

public class LinkedInExample {
   private static final String PROTECTED_RESOURCE_URL = "https://api.linkedin.com/v1/people/~:(id,skills)";

   public static void main(String[] args) {
      OAuthService service = new ServiceBuilder()
                             .provider(LinkedInApi.class)
                             .apiKey("KEY")
                             .apiSecret("SECRET")
                             .build();
      Scanner in = new Scanner(System.in);

      // Obtain the Request Token
      Token requestToken = service.getRequestToken();

      System.out.println(service.getAuthorizationUrl(requestToken));
      System.out.println("And paste the verifier here");
      System.out.print(">>");
      Verifier verifier = new Verifier(in.nextLine());

      // Trade the Request Token and Verfier for the Access Token
      System.out.println("Trading the Request Token for an Access Token");
      Token accessToken = service.getAccessToken(requestToken, verifier);
      System.out.println("Got the Access Token!");

      // Now let's go and ask for a protected resource!
      OAuthRequest request = new OAuthRequest(Verb.GET, PROTECTED_RESOURCE_URL);
      service.signRequest(accessToken, request);
      Response response = request.send();
      System.out.println(response.getBody());

   }
}

此代码的输出如下:

{"id": "UU4glj53pm"}

缺少技能信息。

我只是发现我的应用程序必须获得 r_fullprofile 会员权限才能获取 LinkedIn API 的技能信息。所以代码没有错。