1

据我了解,可以使用以下 URL 查询用户在应用中发布的自定义操作的列表。

https://graph.facebook.com/me/gym:workedout?access_token=<accessToken>

在这种情况下,应用程序是“gym”,而自定义操作是“workedout”。

我的问题是;用户可以查询我们由其他用户发布的自定义操作吗?如果可以,如何查询?

4

1 回答 1

2

是的,只要他们授予您适当的权限,您的应用就可以在任何 Open Graph 应用中读取用户朋友的活动。将上面调用中的“我”替换为您要查询其活动的应用用户朋友的用户 ID - 您需要适当的权限 ( friends_actions:[APP_NAMESPACE])

短版,以'gym'和'workedout'为例friends_actions:gym,向用户请求权限,然后查询/<user id>/gym:workedout

它必须为特定的朋友完成,而不是在 /friends 连接上,所以对于给定的用户,查看他们的朋友发布的所有活动的最佳方式(并且对该用户可见(你会惊讶有多少人不这样做) '不考虑这个..)),是:

  • 来自用户的请求user_actions:APP_NAMESPACEfriends_actions:APP_NAMESPACE许可
  • 获取该用户使用该应用程序的朋友的列表。如果您在同一个应用程序中执行此操作,您可以通过调用/me/friends?fields=installed并查找用户来执行此操作installed: true
  • 如果您从不同的应用程序执行此操作,则需要用户告诉您,如果您想优化查询,他们的哪些朋友使用该应用程序,否则您需要在执行之前将他们的整个朋友列表分成批次下一步
  • 通过调用请求该应用程序中朋友的操作列表/APP_NAMESPACE:ACTION_NAME?ids=COMMA_SEPARATED_LIST_OF_UIDS(例如/gym:workedout?ids=4,5,1234567889,1111111111:)
    • 警告:您还需要知道 API 中调用了什么操作;如果它是针对您自己的应用程序以外的应用程序,我不确定这样做的好方法(有人知道吗?)
于 2012-05-09T00:29:23.767 回答