【问题标题】:Foursquare checkins api - trying to get checkins between datesFoursquare checkins api - 尝试在日期之间进行签到
【发布时间】:2012-04-24 04:10:11
【问题描述】:

我正在使用此处引用的 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/
如果你已经读到这里,这就是这个问题的主旨(除非有人知道我做错了什么……) 如果我使用具有上述设置的 apigee.com 界面创建请求,则响应正文仅包含我需要的签入,即指定日期之间的签入!如果我使用我的应用程序,它会全部返回! 我的网址 /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

发现不同了吗?我也不行!谁有想法? 非常感谢

【问题讨论】:

    标签: api foursquare checkin date-range


    【解决方案1】:

    我认为您的网址中有错字。 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 也适用于我。

    【讨论】:

    • 非常感谢!显然我现在觉得自己很愚蠢,但老实说,我只是没有看到这一点!我很高兴有一个答案......我可能只是盯着这种方式盯着看太久了。我可以确认它现在工作正常。再次感谢您花时间指出我的错误,非常感谢。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-11-29
    • 1970-01-01
    • 1970-01-01
    • 2012-03-15
    • 2012-05-04
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多