如何通过Facebook Graph API向用户提供其他会员的信息

时间:2015-06-23 01:14:18

标签: java android facebook facebook-graph-api

我正在制作一个约会应用程序,向用户提供“会员”信息(Facebook个人资料),就像其他约会应用程序一样。我在下面使用了Facebook Graph API,但我希望有人告诉我“如何向用户提供其他成员的信息”。

  1. 首先,我在Facebook开发者中注册了我的应用程序
  2. 我被批准了我需要通过“提交项目以供审批”使用的功能' (我的批准项目:电子邮件,public_profile,User_photo,User_like,user_work_history,user_education_history)
  3. 然后,我通过服务器创建了成员数据库,因此,我可以通过互锁的Facebook登录检查所有用户的ID。
  4. 因此,如果用户在我的应用程序中使用她/她的帐户登录,他可以在帐户中呼叫她/他的详细信息。 (User_photo,User_like,user_work_history,user_education_history)
  5. 但问题是,用户需要在他/她(User_photo)周围接收会员信息,但似乎不起作用。 (可提供public_profile信息)
  6. 这意味着,在收到用户的ID后,它会被转发到服务器以使用{user-id} / albums和{user-id} / photos来源。但它仍然表示两者都没有结果。 (通过Facebook登录带来GraphUser信息,并通过GraphUser.getId()带来user_id)
  7. 所以我想知道是否只有登录帐户的ID部分中的信息可见,但似乎名为highli ***的应用程序正在使用该服务。

    我想请求有人帮我解决#5,6的问题?请帮帮我(请参阅来源)

    使用user_id信息

    通过以下方法带来album_id
               new Request(Session.getActiveSession(), "/user_id/albums", null, HttpMethod.GET, new Request.Callback() {
    
           @Override
           public void onCompleted(Response response) {
           }                                }).executeAsync();
    

    使用album_id信息

    通过以下方法显示照片信息
               new Request(Session.getActiveSession(), "/album_id/photos", null, HttpMethod.GET, new Request.Callback() {
    
           @Override
           public void onCompleted(Response response) {
    
           }                                }).executeAsync();
    

1 个答案:

答案 0 :(得分:0)

如果Facebook Graph API没有返回任何结果(空数组),那么很可能是权限问题。

为了您访问其他用户的信息,其他用户也必须已获得所需的权限。

例如: 用户A正在请求用户B的信息。两个用户必须为以下请求授予以下权限:

user_friends, user_photos 

{UserB-Id}/albums 
{UserB-Id}/photos
{Album-Id}/photos

我建议使用Graph API Explorer来测试您的请求。在这里,您可以模拟应用程序的令牌,并应用不同的权限,甚至在Facebook允许您使用它们之前。

您可以找到有关权限here的更多信息。