我目前正在开发一款Android应用,它使用Facebook图形API根据用户的位置获取网页/地点。我还希望按类别过滤结果,例如餐馆。 现在我只是想搜索“餐馆”这个名字: https://graph.facebook.com/search?q=restaurant&type=place¢er=37.76,-122.427&distance=1000
问题是它找不到没有名字“restaurant”的页面/地方,它也会返回与餐馆没有任何关系的地方。我也有语言问题,在非英语国家,我的搜索将完全失败。
我正在考虑的一个可能的解决方案是获取范围内的所有位置,并在我的应用程序中解析它们的类别或名称。显然这会给我的应用带来很多开销。
我想知道是否有更好的解决方案,比如使用FQL来获得过滤结果?
答案 0 :(得分:2)
应该有,但我无法解开如何。
此FQL查询将为您提供有关已知位置附近所有位置的信息:
SELECT name, page_id, categories, description, general_info
FROM page WHERE page_id IN
(SELECT page_id FROM place WHERE
distance(latitude, longitude, "37.76", "-122.427") < 1000
)
categories
字段是一个值为id
和name
的数组。看看这些结果,有一系列的类别名称,如“餐厅”:“意大利餐厅”,“酒吧/餐厅等”
我找不到的是一种向此处添加WHERE categories
子句以返回数据的方法。