Php 使用API获取Gowalla签入历史记录

Php 使用API获取Gowalla签入历史记录,php,api,curl,geolocation,social-networking,Php,Api,Curl,Geolocation,Social Networking,我一直在玩Gowalla API,想知道是否有人找到了一种方法来获取所有最近签入的列表(仅限您自己,不包括朋友)。文档非常糟糕。您可以使用它们来查看API中的可用内容。它非常整洁,可以作为很好的文档,只需查看样式URL即可 下面是获取最后5次签入的基本代码。您将需要一个API密钥 $username = 'sco'; $api_key = 'f6cd524ac9c4413abfb41d7123757d9'; $checkin_num = 5; $url = "http://api.gowalla

我一直在玩Gowalla API,想知道是否有人找到了一种方法来获取所有最近签入的列表(仅限您自己,不包括朋友)。文档非常糟糕。

您可以使用它们来查看API中的可用内容。它非常整洁,可以作为很好的文档,只需查看样式URL即可

下面是获取最后5次签入的基本代码。您将需要一个API密钥

$username = 'sco';
$api_key = 'f6cd524ac9c4413abfb41d7123757d9';
$checkin_num = 5;
$url = "http://api.gowalla.com/users/{$username}/stamps?limit={$checkin_num}";

// setup curl
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_HTTPHEADER, array (
    "Accept: application/json",
    "X-Gowalla-API-Key: {$api_key}",
));
$body = curl_exec($ch);
curl_close($ch);
$json = json_decode($body, true);
foreach($json['stamps'] as $stamp) {
    print $stamp['spot']['name'] . '<br/>';
    print "<pre>";
    print_r($stamp);
    print "</pre>";
}

用于获取用户的所有签入。使用
页面
参数获取超出第一页的结果。不要忘了传递带有
应用程序/json
值的
Accept
标题,否则Gowalla只会返回500个错误。

很乐意提供帮助。欢迎来到StackOverflow!这将为您提供“戳记”-您在每个不同的位置都有一个戳记。但是,这并没有给你每次签入,也没有给你与签入相关的消息。正确的ibz,答案是关于如何使用PHP和cURL获取数据,我还将提问者引向API浏览器,以便他能够了解可用的不同数据。如果您觉得我的答案需要修改或澄清,请随时添加!谢谢。@artlung不知道这个问题的初衷是什么-如果是关于如何从PHP调用Gowalla API,那么你的答案很好。然而,我提出这个问题是希望能找到一种方法来获得实际的签入-这似乎不可能通过使用API explorer中描述的API调用来实现(是的,我终于找到了一种方法,并在这里发布了答案。哦,Gowalla刚刚发布了版本4-旧API仍然有效,但似乎无法捕获在版本4客户端上创建的签入!
Array
(
    [spot] => Array
        (
            [image_url] => http://static.gowalla.com/categories/24-standard.png
            [url] => /spots/19890
            [lat] => 38.9989524833
            [address] => Array
                (
                    [locality] => Kansas City
                    [region] => MO
                )

            [lng] => -94.5939345333
            [name] => The GAF Pub & Grille
        )

    [first_checkin_at] => 2010-06-12T19:16:57+00:00
    [checkins_count] => 1
    [last_checkin_at] => 2010-06-12T19:16:57+00:00
)