Facebook FQL : Get checkins within range

标签 facebook facebook-graph-api coordinates facebook-fql checkin

有没有办法使用 FQL 选择指定位置范围内的所有 friend 签到?我可以使用 FQL 返回我 friend 的签到坐标:

https://api.facebook.com/method/fql.query?access_token={0}&query=SELECT coords FROM checkin WHERE author_uid IN (SELECT uid2 FROM friend WHERE uid1 = me())

但是我怎样才能添加到上面的查询中来做类似...

Where coords 在 [(New York City, NY) | 10 英里以内 | (经度、纬度) | (user.current_location)]

如有任何帮助,我们将不胜感激。提前致谢。

编辑(美国东部时间 3 月 9 日下午 3:05):

我主要只是在寻找最终结果 - 不需要在单个 FQL 语句中取回所有内容,甚至不需要使用 FQL(可能是图形 API?)我知道我可能需要将其取回数据由于 FQL/graph api 的限制,可以分段并在本地使用它。我只是想以一种高效的方式进行,这样用户就不必等待 20 秒来加载所有内容。

直接的问题是,如果某人有几百个 friend ,并且每个 friend 的所有签到都被返回,那么处理的数据太多了。

我正在寻找的结果的详细信息是从我所有的 friend 开始,最后是他们在过去 X 天内签到的前 10 个地方(基于签到位置 ID 的最高频率),在用户当前 Facebook 位置的 Y 距离内,并且该位置的页面属于特定类别,例如酒吧。

这就是我正在处理的情况,我希望我附加的附加信息不会使我原来的问题复杂化。谢谢!

最佳答案

所以有一些名为 distance() 的未记录函数可能对您有所帮助,尽管它的效果不是很好(特别是因为它的半径限制为 50 公里):

SELECT coords, author_uid, tagged_uids, target_id, message FROM checkin WHERE target_id IN
(SELECT page_id FROM place WHERE distance(latitude, longitude, "37.75377496892", "-122.42077080676") < 50000)

最大值为 50,000 ,这是 FQL(显然未记录)distance函数的输出单位。

https://developers.facebook.com/docs/reference/fql/checkin/ https://developers.facebook.com/docs/reference/fql/place

关于 Facebook FQL : Get checkins within range,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5250368/

相关文章:

java - 执行 doInBackground() 时发生错误,同时执行 facebook like

facebook-graph-api - 如果我请求publish_stream,是否需要 "offline_access"权限?

python - 城市/省/州列表与坐标?

android - osmdroid - 在 map 上添加一个区域

ios - 为同时使用电子邮件和 facebook_id 的网络和移动设备创建用户创建/身份验证系统

php - 为什么我登录 Facebook 后页面没有刷新?

testing - 如何在本地主机上测试开放图

ios - 对象在 iOS 的 Open Graph 共享对话框中消失

javascript - 如何使用 jQuery 获取表格中的单元格 (<td>) x 和 y 坐标?

ios - Facebook graph api 最后已知位置