有没有办法获取使用Facebook应用程序的所有人的用户ID?
答案 0 :(得分:19)
进行广泛的研究我得出结论 没有方法可以做到这一点 !
我找到了什么:
一个名为friends.getAppUsers
的旧REST API,它获取授权应用程序的用户朋友的所有ID。
我希望我找到了什么:
阅读authentication document中的App Login
部分:
除了用户登录,Facebook 平台支持应用程序登录使用 OAuth 2.0客户端凭据流。 应用程序登录允许您采取各种 您的应用的管理操作, 例如检索数据洞察数据或 批准请求。
我认为application对象会有一个直接的方法(类似于accounts
):
$facebook->api("/APP_ID/users");
但我错了。然后,随着insights功能的引入,我感到震惊的是,您只能获得用户ID的计数!
你能做什么:
一旦用户授权您的应用程序并且您的应用程序已经拥有用户(很可能就是这种情况),就会在您的数据库中存储用户ID,检查您是否有与您的数据库中的应用程序交互的每个用户的记录...这样,您就可以立即获得活跃用户的用户ID。
答案 1 :(得分:0)
关于这一点 - 我通过基本的Graph API搜索找到了很多我正在寻找的用户ID,然后检查它们对我的应用程序是否有效。
在此处搜索电子邮件地址或用户名: - https://developers.facebook.com/tools/explorer?method=GET
QUERY: https://graph.facebook.com/search?q=user@email.com&type=user
如果您获得匹配或多个匹配,则可以在同一资源管理器的FQL查询按钮上检查它是否有效: -
SELECT uid FROM user WHERE uid = *USER_ID_TO_SEARCH* AND is_app_user = 1
如果它看起来像是一个uid,你很好 - 它们是有效的。这有助于我得到我需要的东西(当我没有获得一些关于注册的应用程序用户信息时)。
答案 2 :(得分:0)
GET /v2.10/{app-id}/accounts
您将获得该应用程序的所有帐户