在包含categoryId参数时,我从API查询中获得意外结果。
例如,使用以下参数搜索马萨诸塞州波士顿的“公民公共屋”时
ll: 42.3489027315987, -71.096134185791
query: citizen
categoryId: 4bf58dd8d48988d116941735 <== 'bars'
结果包括其他类别的场地,如“银行”。 categoryId参数有问题吗?在API文档中,它被标记为“实验性”。我使用不当吗?
仅供参考:我使用quimby gem通过rails应用程序与foursquare API连接。
谢谢!
答案 0 :(得分:6)
如果您要找的地方是
Citizen Public House&amp;牡蛎酒吧
然后你使用了错误的categoryId :(
这些类别具有层次结构,搜索由它完成。
具体来说,4bf58dd8d48988d116941735
是条形类别
那个地方是威士忌酒吧,类别ID:4bf58dd8d48988d122941735
为什么银行会回来,不确定:)我几乎可以肯定,在使用查询进行搜索时,无论其他过滤器如何,foursquare引擎都会强制结果与查询匹配。
您应该download all categories并查看类别树,以便更好地了解要使用的ID
请注意,您可以查找夜生活类别4d4b7105d754a06376d81259
其中包含所有条形图,因为您正在查询查询,您应该找到您要查找的内容(您也可以尝试使用intent=match
或浏览半径)。
答案 1 :(得分:3)
超级晚了,但我发现如果你在categoryId
之后和验证和版本参数之前直接放置...search?
参数,它就可以运行。
例如。 search?categoryId=123&client_id=456&client_secret=789&v=20140828
答案 2 :(得分:0)
似乎foursquare上的所有categoryID都是相同的。我刚刚为一个机场进行了调查,让它给我一个categoryID,然后为吧做同样的事情。它们都具有相同的categoryID。
我找到了一个不同的categoryID(4eb1bc533b7b2c5b1d4306cb Airport Lounge),当它用作过滤器时,它只返回带有此ID的结果。