1

我正在使用此处引用的 api @ api.foursquare.com/v2/users/USER_ID/checkins developer.foursquare.com/docs/users/checkins 我正在使用 vb.net 创建请求,但这可能无关紧要。我遇到的问题是我收到的响应似乎忽略了 beforeTimeStamp 值。

例如,我创建了一个请求 url;(oauth_token 被屏蔽 - 但正确且有效) https://api.foursquare.com/v2/users/self/checkins?oauth_token=####&v=20120214&limit=250&offset=0&afterTimestamp=1332720000&beforeTimestamp=1333238400 1332720000 是纪元日期26-03-2012 和 1333238400 是 01-04-2012 我希望这会返回这些日期之间的所有签到。然而,它总是返回最近一次的所有签到,即今天 2012 年 11 月 4 日。我昨晚花了很多时间寻找这个问题的答案,我没有进一步前进。

我可以继续编写一个分页方法来移动历史日志,直到我拥有我需要的那些。不过,这会创建多个请求。我什至编写了一个简单的函数,用于在我取回对象后删除超出范围的签入。然而,这似乎很浪费,尤其是当我正在编写的应用程序有可能在用户历史中追溯到几年前。这将意味着返回比所需更多的数据,从而产生不必要的开销。经过所有搜索后,当我偶然发现https://apigee.com/上的 Foursquare API 控制台时,我正要接受上述两种解决方法之一
如果您已经读到这里,这就是这个问题的主旨(除非有人知道我做错了什么……)需要,即指定日期之间的那些!如果我使用我的应用程序,它会全部返回!我的 URL /v2/users/self/checkins?oauth_token=####&v=20120214&limit=250&offset=0&afterTimestamp=1332720000&beforeTimestamp=1333238400 Apigee 的 URL(在执行后的请求框中) /v2/users/self/checkins?oauth_token=# ###&v=20120214&limit=250&offset=0&afterTimestamp=1332720000&beforeTimeStamp=1333238400

指出不同?我也不行!有人有想法么?非常感谢

4

1 回答 1

0

我认为您的网址中有错字。beforeTimeStamp应该是beforeTimestamp。这就是为什么您的第二个 URL 不起作用的原因。进一步看来,您在帖子中混淆了 Apigee 的 URL 和您的 URL。

按预期检索昨天的签到对我有用:

https://api.foursquare.com/v2/users/self/checkins?oauth_token=###&v=20120321&afterTimestamp=1334120400&beforeTimestamp=1334206799

从 20120214 开始的 API 版本也没有问题。您的 URL 也为我工作。

于 2012-04-12T10:45:24.223 回答