【发布时间】:2012-01-19 00:54:25
【问题描述】:
FB Graph API 展示了我如何在世界任何地方搜索所有名为“Mark”的用户:
https://graph.facebook.com/search?q=mark&type=user
但我希望能够像洛杉矶所有喜欢足球的用户一样按位置和兴趣进行搜索。
我查看了 API 文档和论坛,但虽然我认为这将是一个常见问题(无论是否可能),但我找不到任何东西。
感谢您的帮助。
【问题讨论】:
FB Graph API 展示了我如何在世界任何地方搜索所有名为“Mark”的用户:
https://graph.facebook.com/search?q=mark&type=user
但我希望能够像洛杉矶所有喜欢足球的用户一样按位置和兴趣进行搜索。
我查看了 API 文档和论坛,但虽然我认为这将是一个常见问题(无论是否可能),但我找不到任何东西。
感谢您的帮助。
【问题讨论】:
Graph API 的当前实现使这些类型的搜索成为不可能。
首先,搜索查询结构取决于被搜索资源的类型。大多数search queries in the documentation 仅包含一个搜索词并且不允许您限制正在搜索的字段,这并非巧合。在有限的类型子集(例如Places)之外,不能使用多个术语,并且可能无法获得您要搜索的字段的结果(例如you can't search for Pages by location)。
其次,Graph API 的所有方法都遵循 Facebook 的权限。如果您查看User objects 上的文档,您会注意到location 字段和likes 连接都需要扩展权限(分别为user_location 和user_likes)才能访问它们。由于这两个字段默认情况下是私有的,因此无法找到位置在洛杉矶或喜欢足球的用户。
我怀疑这是因为 Graph API 的目的不是让程序员对 Facebook 的用户群进行精细搜索,而是“推广丰富的社交应用程序”。
【讨论】: