我正在尝试熟悉 Facebook API 和 FQL。我的查询返回一个空集,并且我不确定要更改哪些权限。几年前,当 API 首次出现时,我就开始开发一个旧应用程序。
我正在尝试使用该应用程序和 fql.query test console
首先,我正在尝试获取我的墙帖:
SELECT actor_id, message FROM stream WHERE source_id = xxxxx limit 50
返回结果是:
[]
然后我尝试使用 friend 的 ID source_id = yyyyy
进行相同的查询,然后我得到了他的帖子。这是与不同 friend 的碰运气。
问题:
- 如何使用 FQL 判断我的应用是否有权访问此数据?
- 为什么我无法为我自己的应用程序(我是该应用程序的管理员)检索此信息?
- 我需要更改哪些权限(对于我的应用程序?对于我的个人资料?)才能查询我的帖子?什么 URL 允许我更新这些权限?
最佳答案
How can I, using FQL, tell whether or not my app has permissions to access this data?
你不能,大多数时候它应该通过错误通知你缺少权限。 但是您可以检查您的应用程序是否授予了特定权限:
SELECT read_stream,offline_access,publish_stream FROM permissions WHERE uid=me()
更多关于此here 。
Why can't I retrieve this for my own application, for which I am the administrator?
如果您没有正确的权限,即使您是应用程序的管理员,您也无法获得所需的信息。
What permissions do I need to change (for my app? for my profile?) to be able to query my wall posts? What URL lets me update those permissions?
stream
中有明确规定表文档。您需要 read_stream
permission 。
现在文档中还提到了为什么您能够查看 friend 的帖子而不是您的帖子:
查询该表时可以得到两种类型的数据:
- 您无需获得扩展权限即可获取公共(public)数据(Facebook 上的任何人都可以查看)。
- 如果提示用户提供 read_stream 扩展权限,您可以获得更多数据。
所以很可能您将隐私设置设置为“高”或其他设置。只需获得 read_stream
权限,您就可以检索您的帖子。
关于facebook - FQL 返回空集?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5189481/