我有相当多的Facebook开发经验,但这让我拉了头发。它必须是非常小的东西,但我无法得到它。我最近看到一些带有欢迎标签的Facebook页面,显示用户名称“欢迎[您的名字]”访问他们的页面。示例如下:
https://www.facebook.com/Tony.Samaha.Official.Page
据我所知,没有用户的权限,我们无法获取用户ID。在权限之后,我们可以在签名请求中获取用户ID。如何获取Facebook用户ID或名称,类似于上面的示例?这是怎么回事?这可以实现吗?
仅供参考:我使用的是iframe标签。
答案 0 :(得分:3)
查看signed_requests上的文档。当用户访问您的应用时,您的网址会发布signed_request
。文档说明:
- signed_request会在Facebook.com上传递给Apps.com 加载到Facebook环境
- signed_request传递给any 已在开发者应用中注册了Deauthorized Callback的应用 每当给定用户使用App Dashboard删除应用程序时
- 将signed_request传递给使用注册插件的应用 只要用户成功注册其应用
您必须解码此请求(请参阅上面的链接以获取详细信息),然后您可以从中提取访问用户的user_id。然后,你所要做的就是像这样查询Graph API:
https://graph.facebook.com/USER_ID
您将收到该用户的公开信息,应包含用户名。
答案 1 :(得分:2)
用户仍在使用旧的静态FBML应用,因此他们很可能正在使用fb:name
标记。虽然,我相信现在已经弃用了。实际上,您链接的页面需要更新。