我需要在Java Spring框架中获得我和朋友之间的Facebook共同朋友。
我可以得到我的朋友,他们都安装了应用程序。但无法得到共同的朋友。
我的疑问是user-context-id ..用户id和user-context-id是相同的。
如果是,我将获得例外。 {的用户上下文-ID } / mutual_friends
请有人帮我解决这个问题是什么是用户上下文ID,以及我们如何为我的朋友获取
FacebookClient facebookClient = new DefaultFacebookClient(accesstoken, Version.LATEST);
User user = facebookClient.fetchObject("me", User.class, Parameter.with("fields", "email,name,locale"));
Connection<User> friends = null;
String customerId = user.getId();
String customerName = user.getName();
String customerMail = user.getEmail();
Connection<User> friends = facebookClient.fetchConnection("me/{user-id of the target person}/mutual_friends", User.class);
答案 0 :(得分:0)
user-context-id
和user-id
不一样。
在Graph API中:
user-context-id:某人的社交背景
user-id: / {user-id}节点返回单个用户。 (用户代表Facebook上的某个人。)
答案 1 :(得分:0)
这将是您与朋友之间的共同朋友的正确API调用:
/[id-of-friend]?fields=context.fields(mutual_friends)
或者:
/[id-of-friend]?fields=context{mutual_friends}
当然,您必须使用您的用户访问令牌。我假设你知道你只能得到授权你的应用程序的共同朋友。
顺便说一下,如果需要,这就是如何获取&#34; Context ID&#34;:
/[id-of-friend]?fields=context{id}
示例:
facebookClient.fetchObject("831925293625800", User.class, Parameter.with("fields", "context.fields(mutual_friends)"));