了解推文上的地理位置

时间:2012-05-21 12:56:41

标签: php javascript geolocation twitter

我正试图从推文中获取地理位置。 对于我的测试,我发布了地理引用的新推文但是当我得到它们的json时,元素'geo'为空。为什么?他们怎么了?

我不想按范围和地理位置进行搜索:我想搜索一些由特定主题标签索引的推文,然后检索'geo'json元素。 我试图搜索其他推文(不是我的),有时我把'geo'元素作为一个完整的对象,坐标数组。

那么,我怎么办才能让'geo'元素不为空?

我做了4个地理引用的帖子:my tweets

地点是:44.694704,10.528611

编辑:添加了地理编码参数

这就是我所做的服务器端(纯php):

$conn = new OAuth (CONSUMER_KEY, CONSUMER_SECRET);
$conn->setToken (ACCESS_TOKEN, ACCESS_TOKEN_SECRET);
$conn->fetch (API_URL, array ('q' => '#testhashtagandgeo', 'geocode' => '44.694704,10.528611,4km'));
echo $conn->getLastResponse ();

我使用了PHP OAuth base,并且正确定义了每个常量,因此效果很好。

客户端(ExtJS):

Ext.onReady (function () {
    Ext.Ajax.request ({
        url: 'proxy.php' ,
        disableCaching: false ,
        success: function (xhr) {
            var js = Ext.JSON.decode (xhr.responseText);
            Ext.each (js.results, function (tweet) {
                if (tweet.geo !== null) {
                    console.log ('lat = ' + tweet.geo.coordinates[0] + ' - lng = ' + tweet.geo.coordinates[1]);
                }
            });
            console.log (js);
        } ,
        failure: function (xhr) {
            console.log ('something\'s wrong!');
        }
    });
});

提前致谢。

威尔克

1 个答案:

答案 0 :(得分:0)

您需要read the documentation

  

仅当查询包含地理编码参数且用户使用地理信息推文时才包含位置数据。

因此,您需要在查询中添加类似的内容

&geocode=37.781157,-122.398720,25mi

或者您想要的任何位置。